HTF TriangleHTF Triangle by ZeroHeroTrading aims at detecting ascending and descending triangles using higher time frame data, without repainting nor misalignment issues.
It addresses user requests for combining Ascending Triangle and Descending Triangle into one indicator.
Ascending triangles are defined by an horizontal upper trend line and a rising lower trend line. It is a chart pattern used in technical analysis to predict the continuation of an uptrend.
Descending triangles are defined by a falling upper trend line and an horizontal lower trend line. It is a chart pattern used in technical analysis to predict the continuation of a downtrend.
This indicator can be useful if you, like me, believe that higher time frames can offer a broader perspective and provide clearer signals, smoothing out market noise and showing longer-term trends.
You can change the indicator settings as you see fit to tighten or loosen the detection, and achieve the best results for your use case.
Features
It draws the detected ascending and descending triangles on the chart.
It supports alerting when a detection occurs.
It allows for selecting ascending and/or descending triangle detection.
It allows for setting the higher time frame to run the detection on.
It allows for setting the minimum number of consecutive valid higher time frame bars to fit the pattern criteria.
It allows for setting a high/low factor detection criteria to apply on higher time frame bars high/low as a proportion of the distance between the reference bar high/low and open/close.
It allows for turning on an adjustment of the triangle using highest/lowest values within valid higher time frame bars.
Settings
Ascending checkbox: Turns on/off ascending triangle detection. Default is on.
Descending checkbox: Turns on/off descending triangle detection. Default is on.
Higher Time Frame dropdown: Selects higher time frame to run the detection on. It must be higher than, and a multiple of, the chart's timeframe. Default is 5 minutes.
Valid Bars Minimum field: Sets minimum number of consecutive valid higher time frame bars to fit the pattern criteria. Default is 3. Minimum is 1.
High/Low Factor checkbox: Turns on/off high/low factor detection criteria. Default is on.
High/Low Factor field: Sets high/low factor to apply on higher time frame bars high/low as a proportion of the distance between the reference bar high/low and open/close. Default is 0. Minimum is 0. Maximum is 1.
Adjust Triangle checkbox: Turns on/off triangle adjustment using highest/lowest values within valid higher time frame bars. Default is on.
Detection Algorithm Notes
The detection algorithm recursively selects a higher time frame bar as reference. Then it looks at the consecutive higher time frame bars (as per the requested number of minimum valid bars) as follows:
Ascending Triangle
Low must be higher than previous bar.
Open/close max value must be lower than (or equal to) reference bar high.
When high/low factor criteria is turned on, high must be higher than (or equal to) reference bar open/close max value plus high/low factor proportion of the distance between reference bar high and open/close max value.
Descending Triangle
High must be lower than previous bar.
Open/close min value must be higher than (or equal to) reference bar low.
When high/low factor criteria is turned on, low must be lower than (or equal to) reference bar open/close min value minus high/low factor proportion of the distance between reference bar low and open/close min value.
Cari dalam skrip untuk "high low"
RunRox - Advanced SMC⭐️ Introducing Our Advanced SMC Indicator: Elevate Your Smart Money Concept Trading
We are excited to present our innovative indicator, specifically designed for the Smart Money Concept (SMC). Our approach goes beyond the traditional SMC strategy by offering significant enhancements that can help you achieve stronger trading performance.
We employ a more sophisticated SMC structure, incorporating improved IDM (Inducement) logic, both internal and external structures, and four types of order blocks. This allows for deeper insights into market trends and a clearer understanding of how major market participants may be manipulating price action.
🟠 Indicator Features:
Structure
HTF Structure – Choose any timeframe and display its structure on your current chart.
CHoCH | BOS | IDM – Display any components from this structure.
Market Minor Structure – Swing and Minor structure.
BOS/CHoCH Breaking by (Body | Wick) – Choose the principle for building the structure, either by the candle body or by their wicks.
BOS/CHoCH Move if Swept – When liquidity is taken, decide whether to move the structure line higher or consider it a structural break.
Move CHoCH/BOS – Relocate key points on the chart if the structure becomes too large.
FVG Concept
HTF FVG – Choose any timeframe from which you want to display FVG on your current chart
Three Types of FVG – Classic FVG, Double FVG, Implied Imbalance
Reaction to FVG – Show the market’s reaction to FVG on the chart
Mitigation Method – Select the fill method that suits your approach (Touch/Midline/Complete)
Remove Filled FVG – Remove FVGs from the chart once they have been filled
Combine FVG – Merge several consecutive FVGs into one
Length FVG – Adjust the number of candles that define the FVG
OrderBlock Concept
HTF OrderBlock – Choose any timeframe from which you want to display orderblocks on your current chart
Swing and Minor Orderblocks – Display only the orderblocks you need, whether from the Swing or Minor structure
Four Types of Order Blocks – Advanced OB, Classic OB, BTS/STB zones, Extremum Candle
Block Based on – Decide whether to base the orderblock on candle highs/lows or candle open/close
Mitigation Method – Define when an orderblock is considered filled (Touch/Midline/Complete)
Remove Blocks Older – Remove older orderblocks from the chart
Hide Overlap – Disable overlapping orderblocks when they appear in the same area
Eat Young Blocks – Reduce the size of an orderblock until it fully forms
Hide Distant Blocks – Remove orderblocks that are too far from the current price
Previous Highs & Lows
Four Level Types – Day, Week, Month, Quarter
Style Customization – Choose line color, line style, and transparency
Fibonacci Retracements
10 Template Options – Ten different bases on which you can build your Fibonacci grid
Up to 7 Levels – Add up to seven Fibonacci levels for your convenience
Fibo Inversion – Option to invert the Fibonacci grid
Style Customization – Choose line colors, line styles, and transparency
Additional Functions
Premium & Discount Zones – A popular concept we’ve incorporated to help identify potential trading areas within premium or discount prices
Equal Highs & Lows – High-liquidity levels where market makers may seek liquidity
Color Candles – Automatically colors candles based on the current trend
Market Structure ZigZag – Offers a clear visual of the zigzag pattern on which the structure is built
Key Point Labels – Displays important swing high/low points directly on the chart
General Styling – Customize any chart element, including size, style, color, and transparency
Alert Customization – Over 16 types of alerts, easily configured in a few clicks. Receive only the notifications you need. Custom alerts are also available for developers.
Next, we will provide a detailed overview of all the indicator’s features, accompanied by chart examples.
📈 Structure
What Is IDM?
IDM, or the Institutional Distribution Model, is an advanced concept within SMC that focuses on how institutional players distribute their positions in the market. By analyzing IDM, traders can better anticipate price movements and potential turning points, thereby gaining a meaningful edge in their trading.
In our structure concept, IDM can form under specific conditions. The market does not always provide a high-liquidity point to work with, so we’ve adopted a flexible approach. We generate IDM when a certain type of liquidity appears during the impulse and BOS break, allowing for a potential future liquidity sweep.
Below, I will provide an example that illustrates when IDM forms as a liquidity magnet within the structure - and when it does not.
As shown in the example above, we focus on the initial impulse after the BOS. If liquidity forms during this impulse - liquidity that needs to be taken out during the structural move - we mark an IDM level as a price magnet. However, if this liquidity does not appear, we do not create an IDM. In that case, the same point might serve as an FVG or play a different role, depending on your trading approach.
This concept makes the structure more flexible and better able to respond immediately to market movements and key structural points.
Above is an example on the chart illustrating what the structure looks like both with and without IDM. As you can see, when the structural move includes pullbacks and consolidation, there is an opportunity to form an IDM as a price magnet. However, if the impulses are strong and lack pullbacks, FVG becomes the only magnet in that move. Depending on the chart, our indicator adapts to the current market conditions and highlights potential liquidity collection points.
📊 Swing and Minor Structure
In the new version of the indicator, the minor structure and the swing structure differ from each other.
Swing structure - In this structure, as mentioned earlier, the IDM concept remains a price magnet and is formed at certain points on the chart if the conditions allow. If these points do not appear, IDM might not form at all.
Minor structure - Here, we have completely removed IDM and only kept BOS and CHoCH for structure formation. We found that for a minor structure, this approach allows faster reactions to trend changes, depending on market movements.
By making these adjustments, we have resolved the main issue of the advanced structure, which was the large distance between BOS and CHoCH that sometimes resulted in a month-long consolidation between these levels. In this version, those problems no longer occur.
If, for some reason, your settings result in a larger swing structure, you can still work with the minor structure using the same POI as in the swing structure. OrderBlock and FVG remain the primary drivers of order flow.
Shown above is a screenshot of the main structure settings you can adjust. These settings are highly flexible and can be tailored to fit a wide range of trading preferences.
⚖️ FVG Concept
A new feature of our indicator is the FVG concept. We automatically detect three types of FVG at the moment, which will be explained below.
FVG - the standard Fair Value Gap
Double FVG - a double FVG, also referred to as BPR (Balanced Price Range)
Implied Imbalance - a type of imbalance that arises from buyer or seller demand
Below, we will look at examples of the FVG types we currently identify.
All price inefficiencies work in real time, immediately appearing on the chart and allowing traders to quickly respond to FVG reactions.
We have also enhanced this concept by displaying FVG reactions on the chart. If an FVG triggers a reaction and the price responds to that range, we highlight it on the chart, so you can recognize the reaction and make timely trading decisions. A screenshot below shows how this looks in practice.
Below is a screenshot illustrating the main settings of this concept, along with detailed descriptions.
📦 OrderBlock Concept
OrderBlocks provide an effective way to identify areas of interest and make informed decisions. We have dedicated significant effort to refining this section’s functionality and have achieved strong results in doing so.
Order Block Types
Advanced OrderBlock – A specialized type of order block generated by our internal algorithm. This can help traders aim for tighter entries and potentially more favorable risk-reward ratios within a narrow price range.
OrderBlock – The classic type, formed at the highs or lows of a structure when a BOS or CHoCH occurs. It can still be an effective entry method but typically spans a wider price range.
Extremum Candle – Based on liquidity grabs. The candle creating this order block must collect liquidity before making an impulsive move that breaks the BOS or CHoCH.
BTS / STB (Buy To Sell / Sell To Buy) – This concept may appear when market makers manipulate price to buy or sell an asset. It often covers a larger price range because it relies on a brief impulsive move to form.
Each type of order block has its own strengths and weaknesses. We provide traders with the flexibility to choose which types suit their trading style and preferences.
Above is an example of how you can apply OrderFlow alongside our structure and orderblocks, which can produce solid results when combined with the Smart Money concept.
In this demonstration, we have highlighted the Advanced Orderblock as an illustration.
Above is a screenshot of all the settings related to this section. They can be customized to suit your specific needs, ensuring you only see what is genuinely relevant on your chart.
📏 Previous Highs and Lows
You can select four levels to display on the chart as some of the most liquid zones:
Daily Highs and Lows
Weekly Highs and Lows
Monthly Highs and Lows
Quarterly Highs and Lows
This feature helps you identify important levels on lower timeframes and focus on these zones for potential trading opportunities. Below is an example of how it appears on the chart.
Below, you can see the settings available in this section.
📐 Fibonacci Levels
Likewise, a new section in our indicator is Fibonacci Levels, a well-known tool recognized as a reliable source of important levels on the chart. We have added this functionality with the option to choose how you want to generate these levels and which specific levels you want to display.
You can plot Fibonacci levels based on the Swing structure, Minor structure, previous or current day, month, and more. In total, there are 10 different options for constructing the Fibonacci grid.
Above, you can see an example of how it appears on the chart, and below you will find the settings available in this section.
🈹 Premium and Discount
Another useful feature for all traders is the Premium and Discount zones based on structure. This makes it easy to identify areas of interest—whether in a discount or premium zone, or in an equilibrium area.
Below, you can also see the settings available in this section.
✅ Additional Function
We have also separated a few functions into their own section:
Color Candles – Colors the candles according to the current trend.
Market Structure ZigZag – Visually highlights the zigzag used to form the structure.
Key Point Labels – Displays the points on the chart from which the structure is built.
Equal Highs & Lows – Identifies equal highs and lows as areas of potential liquidity for larger market players, as price often aims to sweep these zones.
Below are a few screenshots showing how these features appear on the chart.
Color Candles
Market Structure ZigZag and Key Point Labels
Equal Highs & Lows
Below, you can see a screenshot displaying all the settings available in this section.
🎨 General Styling
We have devoted considerable effort to providing flexible customization for each element on the chart, so you can design the exact look you want. That’s why we created an additional section where you can adjust any element’s size, style, and more.
Combined with extensive color and transparency options, this feature provides a flexible appearance for the indicator on any chart.
Below, you can see the settings available in this section
🔔 Alert Customization
You can configure over 16 types of reactions to various events on the chart. Additionally, you can set up alerts to trigger at specific fill levels and explore numerous other alert options, as shown in the screenshot below.
🟠 Usage Examples
We have also prepared several examples of how to use the indicator. These are standard entry models taken from the classic Smart Money concept.
First Example
In the screenshot above, the market displays a downward structure until a manipulation occurs, followed by a CHoCH break. This is a standard entry model featuring an entry at the nearest FVG, a stop-loss placed beyond the manipulation, and a target at the nearest liquidity zone—whether session-based or, as in our case, a gap (one of the FVG types) that price commonly revisits.
This is considered a more aggressive entry because we only waited for a single confirmation of the trend change—the CHoCH break—and then entered immediately afterward. While the WinRate might be lower in such trades, the Risk-Reward ratio is typically very high if you correctly identify the manipulation.
Second Example
This approach is more conservative and less risky, typically offering a higher WinRate but with a lower Risk-Reward ratio.
Here, we use the 4H FVG as our decision point (POI). With the indicator, we plot the 4-hour FVG on our current chart without needing to switch back and forth between timeframes.
Once price reaches our POI, we look for an entry model that includes three confirmations:
First Confirmation – A CHoCH break.
Second Confirmation – A manipulation.
Third Confirmation – A second BOS break.
We wait for all these confirmations before entering the trade, ensuring our stop-loss is well-protected since the remaining liquidity has been swept and the 4-hour FVG has been fully filled.
Our target is the full fill of a higher timeframe FVG or other high-liquidity levels below.
In a conservative setup, it is crucial to allow a complete OrderFlow to develop, including manipulations and clear breaks of lower levels. This approach helps protect the trade and often results in a higher WinRate.
🟠 Disclaimer
Past performance is not indicative of future results. To trade successfully, it is crucial to have a thorough understanding of the market context and the specific situation at hand. Always conduct your own research and analysis before making any trading decisions.
To gain access to the indicator, please review the author's instructions below this post
ZigZag Library [TradingFinder]🔵 Introduction
The "Zig Zag" indicator is an analytical tool that emerges from pricing changes. Essentially, it connects consecutive high and low points in an oscillatory manner. This method helps decipher price changes and can also be useful in identifying traditional patterns.
By sifting through partial price changes, "Zig Zag" can effectively pinpoint price fluctuations within defined time intervals.
🔵 Key Features
1. Drawing the Zig Zag based on Pivot points :
The algorithm is based on pivots that operate consecutively and alternately (switch between high and low swing). In this way, zigzag lines are connected from a swing high to a swing low and from a swing low to a swing high.
Also, with a very low probability, it is possible to have both low pivots and high pivots in one candle. In these cases, the algorithm tries to make the best decision to make the most suitable choice.
You can control what period these decisions are based on through the "PiPe" parameter.
2.Naming and labeling each pivot based on its position as "Higher High" (HH), "Lower Low" (LL), "Higher Low" (HL), and "Lower High" (LH).
Additionally, classic patterns such as HH, LH, LL, and HL can be recognized. All traders analyzing financial markets using classic patterns and Elliot Waves can benefit from the "zigzag" indicator to facilitate their analysis.
" HH ": When the price is higher than the previous peak (Higher High).
" HL ": When the price is higher than the previous low (Higher Low).
" LH ": When the price is lower than the previous peak (Lower High).
" LL ": When the price is lower than the previous low (Lower Low).
🔵 How to Use
First, you can add the library to your code as shown in the example below.
import TFlab/ZigZagLibrary_TradingFinder/1 as ZZ
Function "ZigZag" Parameters :
🟣 Logical Parameters
1. HIGH : You should place the "high" value here. High is a float variable.
2. LOW : You should place the "low" value here. Low is a float variable.
3. BAR_INDEX : You should place the "bar_index" value here. Bar_index is an integer variable.
4. PiPe : The desired pivot period for plotting Zig Zag is placed in this parameter. For example, if you intend to draw a Zig Zag with a Swing Period of 5, you should input 5.
PiPe is an integer variable.
Important :
Apart from the "PiPe" indicator, which is part of the customization capabilities of this indicator, you can create a multi-time frame mode for the indicator using 3 parameters "High", "Low" and "BAR_INDEX". In this way, instead of the data of the current time frame, use the data of other time frames.
Note that it is better to use the current time frame data, because using the multi-time frame mode is associated with challenges that may cause bugs in your code.
🟣 Setting Parameters
5. SHOW_LINE : It's a boolean variable. When true, the Zig Zag line is displayed, and when false, the Zig Zag line display is disabled.
6. STYLE_LINE : In this variable, you can determine the style of the Zig Zag line. You can input one of the 3 options: line.style_solid, line.style_dotted, line.style_dashed. STYLE_LINE is a constant string variable.
7. COLOR_LINE : This variable takes the input of the line color.
8. WIDTH_LINE : The input for this variable is a number from 1 to 3, which is used to adjust the thickness of the line that draws the Zig Zag. WIDTH_LINE is an integer variable.
9. SHOW_LABEL : It's a boolean variable. When true, labels are displayed, and when false, label display is disabled.
10. COLOR_LABEL : The color of the labels is set in this variable.
11. SIZE_LABEL : The size of the labels is set in this variable. You should input one of the following options: size.auto, size.tiny, size.small, size.normal, size.large, size.huge.
12. Show_Support : It's a boolean variable that, when true, plots the last support line, and when false, disables its plotting.
13. Show_Resistance : It's a boolean variable that, when true, plots the last resistance line, and when false, disables its plotting.
Suggestion :
You can use the following code snippet to import Zig Zag into your code for time efficiency.
//import Library
import TFlab/ZigZagLibrary_TradingFinder/1 as ZZ
// Input and Setting
// Zig Zag Line
ShZ = input.bool(true , 'Show Zig Zag Line', group = 'Zig Zag') //Show Zig Zag
PPZ = input.int(5 ,'Pivot Period Zig Zag Line' , group = 'Zig Zag') //Pivot Period Zig Zag
ZLS = input.string(line.style_dashed , 'Zig Zag Line Style' , options = , group = 'Zig Zag' )
//Zig Zag Line Style
ZLC = input.color(color.rgb(0, 0, 0) , 'Zig Zag Line Color' , group = 'Zig Zag') //Zig Zag Line Color
ZLW = input.int(1 , 'Zig Zag Line Width' , group = 'Zig Zag')//Zig Zag Line Width
// Label
ShL = input.bool(true , 'Label', group = 'Label') //Show Label
LC = input.color(color.rgb(0, 0, 0) , 'Label Color' , group = 'Label')//Label Color
LS = input.string(size.tiny , 'Label size' , options = , group = 'Label' )//Label size
Show_Support= input.bool(false, 'Show Last Support',
tooltip = 'Last Support' , group = 'Support and Resistance')
Show_Resistance = input.bool(false, 'Show Last Resistance',
tooltip = 'Last Resistance' , group = 'Support and Resistance')
//Call Function
ZZ.ZigZag(high ,low ,bar_index ,PPZ , ShZ ,ZLS , ZLC, ZLW ,ShL , LC , LS , Show_Support , Show_Resistance )
[TA] Breaker BlocksDescription:
The Breaker Blocks Finder is a sophisticated tool designed for traders who seek to identify key market structures algorithmically. This indicator meticulously scans for both bullish and bearish breaker blocks, visually delineating them on the chart for easy identification.
Exploring ICT Breaker Blocks: Enhancing Your Trading with Precision
Understanding ICT Breaker Blocks: ICT Breaker Blocks are a nuanced trading concept that leverages market liquidity and manipulation to identify potential breakout points. This strategy is particularly effective in pinpointing moments where the market is poised for a significant directional move.
Mechanics of ICT Breaker Blocks: The essence of this strategy lies in detecting manipulation phases where liquidity is being accumulated, typically around critical market highs or lows. This setup leads to a Stop Hunt, a tactical move to trigger stop orders and fuel a breakout in the opposite direction.
Detailed Breakdown of Breaker Block Types:
Bullish Breaker Blocks:
• Bullish Order Block: The precursor to a bullish breakout, setting the stage for a potential upward move.
• Bullish Breaker Candle: An upward-closing candle that forms just before breaking past an old low, signaling a bullish reversal.
• Confirmation: Achieved when the price dips below the prior low and subsequently rises above the high of the swing, solidifying the bullish breakout.
• Identification: Look for a failed bearish order block, indicated by an initial drop in prices that ultimately reverses, hinting at a bullish shift.
• Key Elements: Monitor the pattern of lows and highs (low, high, lower low, higher high), which suggests an emerging bullish trend.
Bearish Breaker Blocks:
• Bearish Breaker Candle: A downward-closing candle that appears right before an old high is surpassed, indicating a bearish reversal.
• Confirmation: Occurs when prices climb above the previous high and then descend below the swing's low, confirming the bearish move.
• Identification: Initiate by identifying a failed bullish order block, where initial upward price momentum falters and reverses, signaling bearish potential.
• Key Elements: Focus on the sequence of highs and lows (high, low, higher high, lower low), which may denote a looming bearish trend.
Spotting High Probability Breaker Blocks: To enhance the reliability of breaker block identification, incorporate patterns that exhibit a Fair Value Gap (FVG), which typically indicates a stronger likelihood of a successful breakout.
Leveraging ICT Breaker Blocks in Trading: Our Inner Circle Trading mentorship delves into these concepts and more, providing you with comprehensive education and weekly market insights.
By mastering ICT Breaker Blocks, you're equipped with a powerful tool to navigate the intricacies of the market, making informed and strategic trading decisions.
This channel provides you with comprehensive education and weekly market insights. If you enjoyed this thread, like, share, and follow. Join us for an in-depth exploration of advanced trading strategies, and elevate your trading proficiency.
Still confused about Breaker Blocks?
Follow these steps for Bullish Breaker Blocks and reverse them for Bearish Breaker Blocks.
Think:
Bullish BB = Low, High, Lower Low, then Higher High
Bearish BB = High, Low, Higher High, then Lower Low
While this tool is a powerful addition to your trading strategy, it's important to note that it is not an autotrader. Traders should use this indicator as part of a comprehensive trading plan, considering other market factors and personal risk tolerance.
Risk Disclaimer:
Trading financial markets involves significant risk and can result in the loss of your invested capital. You should not invest more than you can afford to lose and should ensure that you fully understand the risks involved. Before trading, please take into consideration your level of experience, investment objectives, and seek independent financial advice if necessary. This indicator is provided as-is without any guarantees or warranty. Use of this indicator is at your own risk, and the creator is not responsible for any financial losses or damages.
Price-Action CandlesWhat is a swing high or swing low?
Swing highs and lows are price extremes. For example say we set our swing length to 5. A candle that is a swing high with a swing length of 5 will have 5 bars to the left that are lower and 5 bars to the right that are lower. A candle that is a swing low with a swing length of 5 will have 5 bars to the left that are higher and 5 bars to the right that are higher.
How are the trend candles calculated?
The trend candles are calculated by storing and comparing historical swing lows and swing highs.
The pinescript code goes as follows:
The pinescript code goes as follows:
var int trend = na
trend := ((hh and high >= psh) or close > csh) ? 1 : ((ll and low <= psl) or close < csl) ? -1 : lh or hl ? 0 : trend
What does that gibberish mean?
-Candle can be GREEN IF
- We have a higher high (current swing high is greater than the previous swing high) and the high is greater than the previous swing high
- OR The current close is greater than the current swing high
-Candle can be RED IF
- We have a lower low (current swing low is less than the previous swing low) and the low is less than the previous swing low
- OR The current close is less than the current swing low
-Candle can be YELLOW IF
- We have a new swing high and the new swing high is less than the previous swing high
- OR We have a new swing low and the new swing low is greater than the previous swing low
If none of the conditions above are true then we continue with whatever color the previous bar was.
What is repainting?
Repainting is "script behavior causing historical vs realtime calculations or plots to behave differently." That definition comes directly from Tradingview. If you want to read the full explanation you can visit it here www.tradingview.com . The price-action candles use swing highs and swing lows which need bars to the left (past) and bars to the right ("future") in order to confirm the swing level. Because of the need to wait for confirmation to for swing levels the plot style can be repainting. With the price-action candles indicator the only repainting part of the indicator is the labels. The price-action candles themselves WILL NOT REPAINT. The labels however can be set to repaint or not depending on the user preference. If the user opts to use repainting then the label location is shifted back by the length of the price-action. So if the "Price-Action Length" input is set to 10, and the user wants repainting, the swing high/low label will be shifted back 10 bars. If the user opts for no repainting, the label will not be shifted and instead show on the exact bar the swing level was confirmed.
Examples Below.
Repaint
Here the labels are shifted back the price-action length.
Non-Repaint
Here the labels are not shifted back because the input setting is set to not repaint.
Multi-timeframe Analysis
The users can view the trend from multiple different timeframes at once with a table displayed at the bottom of their charts. The timeframe can be lower or higher than the chart timeframe.
More examples
Be on the lookout for the Price Action Candles (Lower) indicator where you can view the multi-timeframe labels on a lower price grid in order to see the history over time!
Liquidity composition / quantifytools- Overview
Liquidity composition divides each candle into sections that are used to display transaction activity at price. In simple terms, an X-ray through candle is formed, revealing the orderflow that built the candle in greater detail. Liquidity composition consists of two main components, lots and columns. Lots and columns can be used to visualize user specified volume types, currently supporting net volume and volume delta. Lots and columns can be used to visualize same or different volume types, allowing a combination of volume footprint, volume delta footprint and volume profile in one single view. Liquidity composition principally works on any chart, whether that is equities, currencies, cryptocurrencies or commodities, even charts with no volume data (in which case volatility is used to approximate transaction activity). The script also works on any timeframe, from minute charts to monthly charts. Orderflow can be observed in real-time as it develops and none of the indications are repainted.
Example: Displaying same volume types on lots and columns
Example: Displaying different volume types on lots and columns
Liquidity composition supports user specified derivative data, such as point of control(s) and net activity coloring. Derivative data can be calculated based on either net volume or volume delta, resulting in different highlights.
With net volume, volume delta and derivative data in one view, key orderflow events such as delta imbalances, high volume nodes, low volume nodes and point of controls can be used to quickly identify accumulation/distribution, imbalances, unfinished/finished auctions and trapped traders.
Accessing script 🔑
See "Author's instructions" section, found at bottom of the script page.
Key takeaways
- Liquidity composition breaks down transaction activity at price, measured in net volume or volume delta
- Developing activity can be observed real-time, none of the indications are repainted
- Transaction activity is calculated using volumes accrued in lower timeframe price movements
- Lots and columns can be used to display same or different volume types (e.g. volume delta lots and net volume columns) in single view
- Users can specify derivative data such as volume delta POCs, net volume POC and net activity coloring
- For practical guide with practical examples, see last section
Disclaimer
Orderflow data is estimated using lower timeframe price movement. While accurate and useful, it's important to note the calculations are estimations and are not based on orderbook data. Estimates are calculated by allotting volume developing on lower timeframe chart to its respective section based on closing price. Volume delta (difference between buyers/sellers) is calculated by subtracting down move volumes (sell volume) from up move volumes (buy volume). Accuracy of the orderflow estimations largely depends on quality of lower timeframe chart used for calculations, which is why this tool cannot be expected to work accurately on illiquid charts with broken data.
Liquidity composition does not provide a standalone trading strategy or financial advice. It also does not substitute knowing how to trade. Example charts and ideas shown for use cases are textbook examples under ideal conditions, not guaranteed to repeat as they are presented. Liquidity composition should be viewed as one tool providing one kind of evidence, to be used in conjunction with other means of analysis.
- Example charts
Chart #1: BTCUSDT
Chart #2: EURUSD
Chart #3: ES futures
- Calculations
By default, size of sections and lower timeframe accuracy are automatically determined for all charts and timeframes. Number of lower timeframe price moves used for calculating orderflow is kept at fixed value, by default set to 350. Accuracy value dictates how many lower timeframe candles are included in the calculation of volume at price. At 350, the script will always use 350 lower timeframe price movements in calculations (when possible). When calculated dynamic timeframe is less than 1 minute, the script switches to available seconds based timeframes. Minimum dynamic timeframe can be capped to 1 minute (as seconds based timeframes are not available for all plans) or dynamic timeframe can be overridden using an user specified timeframe.
Example: Calculating dynamic lower timeframe
Main chart: 4H / 240 minutes
Accuracy value: 100
Formula: 240 minutes / 100 = 2.4 minutes
Timeframe used for calculations = 2 minutes
Section size is automatically determined based on typical historical candle range, the bigger it is, the bigger the section size as well. Like dynamic timeframe, automatic section size can be manually overridden by user specified size expressed in ticks (minimum price unit). Users can also adjust sensitivity of automatic sizing by setting it higher (smaller sections, more detail and more noise) or lower (less sections, less detail and less noise). Section size and dynamic timeframe can be monitored via metric table.
Volume at price is calculated by allotting volume associated with a lower timeframe price movement to its respective section based on closing price (volume is stored to the section that covers closing price). When used on a chart with no volume data, volatility is used instead to determine likely magnitude of participation. Volume delta (difference between buyers/sellers) is calculated by subtracting down move volumes (sell volume) from up move volumes (buy volume). Volumes accrued in sections are monitored over a longer period of time to determine a "normal" amount of activity, which is then used to normalize accrued volumes by benchmarking them against historical values.
Volume values displayed on the left side represent how close or far volume traded at given section is to an extreme, represented by value of 10 . The more value exceeds 10, the more extreme transaction activity is historically. The lesser the value, the less extreme (and therefore more typical) transaction activity is. Users can adjust sensitivity of volume extreme threshold, either by increasing it (more transaction activity is needed to constitute an extreme) or decreasing it (less transaction activity is needed to constitute an extreme).
Example: Interpreting volume scale
0 = Very little to no transaction activity compared to historical values
5 = Transaction activity equal to average historical values
10 = Transaction activity equal to an extreme in historical values
10+ = The more transaction activity exceeds value of 10, the more extreme it is historically
Accuracy of orderflow data largely depends on quality of lower timeframe data used in calculations. Sometimes quality of underlying lower timeframe data is insufficient due to suboptimal accuracy or broken lower timeframe data, usually caused by illiquid charts with gaps and inconsistent values. Therefore, one should always ensure the usage of most liquid chart available with no gaps in lower timeframe data. To combat poor orderflow data, a simple data quality check is conducted by calculating percentage of sections with volume data out of all available sections. Idea behind the test is to capture instances where unusual amount of sections are completely empty, most likely due to data gaps in LTF chart. E.g. 90% of sections hold some volume data, 10% are completely empty = 90% data quality score.
Data quality score should be viewed as a metric alerting when detail of underlying data is insufficient to consider accurate. When data quality score is slightly below threshold, lower timeframe chart used for calculations is likely fine, but accuracy value is too low. In this case, one should increase accuracy value or manually override used timeframe with a smaller one. When data quality score is well below threshold, lower timeframe chart used for calculations is likely broken and cannot be fixed. In this case, one should look for alternative charts with more reliable data (e.g. ES1! -> SPY, BITSTAMP:BTCUSD -> BINANCE:BTCUSDT).
Example : When insufficient data quality scores can/cannot be fixed
- Derivative data
Point of control
Point of control, referring to point in price where transaction activity is highest, can be calculated based on the volume type of lots or columns (based on net volume or volume delta). Depending on the calculation basis, displayed point of controls will vary. POC calculated based on net volume is no different from traditional POC, it is simply the section with highest amount of transaction activity, marked with an X. When calculating POC based on volume delta, the script will highlight two point of controls, named leading and losing point of control . Leading POC refers to lot with highest amount of volume delta, marked with an X. If leading POC was net buy volume, losing POC is marked on section with highest net sell volume, marked with S respectfully. Same logic applies in vice versa, if leading POC is net sell volume, losing POC is marked on highest buy volume section, using the letter B.
Net activity
Similarly to point of control calculation, net activity can be calculated based on either volume types, lots or columns. When calculating net activity based on net volume, candles will be colorized according to magnitude of total volume traded. When calculating net activity based on volume delta, candles will be colorized according to side with most volume traded (buyers or sellers). Net activity color can be applied on borders or body of a candle.
- Visuals
Lots, columns, candles and POCs can be colorized using a fixed color or a volume based dynamic color, with separate color options for buy side volume, sell side volume and net volume.
Metric table can be offsetted horizontally or vertically from any four corners of the chart, allowing space for tables from other scripts.
Table sizes, label sizes and offsets for visuals are fully customizable using settings menu.
- Practical guide
OHLC data (candles) is a simple condensed visualization of an auction market process. Candles show where price was in the beginning of an auction period (timeframe), the highest/lowest point and where price was at the end of an auction. The core utility of Liquidity composition is being able to view the same auction market process in much greater detail, revealing likely intention, effort and magnitude driving the process. All basic orderflow concepts, such as ones presented by auction market theory can be applied to Liquidity composition as well.
The most obvious and easy to spot use case for orderflow tools is identifying trapped traders/absorption, seen in high transaction activity at the very highs/lows of a candle or even better, at wicks. High participation at wicks can be used to identify forced orders absorbed into limit orders, idea behind being that when high transaction activity is placed at a wick, price went one direction with a lot of participation (high effort) and came right back up (low impact) within the same time period.
Absorption can show itself in many ways:
- Extreme buy volume sections at wick highs or buy side POC at wick highs
- Multiple, clustered high buy volume sections (but not extreme) at wick highs
- Positive net volume delta into a reversal down
- Extreme sell volume sections at wick lows or sell side POC at wick lows
- Multiple, clustered high sell volume sections (but not extreme) at wick lows
- Negative net volume delta into a reversal up
- Extreme net volume sections at or net volume POC at wick highs/lows
- Extreme net volume into a reversal up/down
For accurate analysis, orderflow based events should be viewed in the context of price action. To identify absorption, it's best to look for opportunities where an opposing trend is clearly in place, e.g. absorption into highs on an uptrend, absorption into lows on a downtrend. When price is ranging without a clear trend or there's no opposing trend, extreme activity at an extreme end of a candle might be aggressive participants attempting to initiate a new trend, rather than getting absorbed in the same sense. With enough effort put into pushing price to the opposite direction at overextended price, a shift in trend direction might be near.
Price action based levels are a great way to get context around orderflow events. Simple range highs/lows as a single data point serve as a high probability regimes for reversals, making them a great point of confluence for identifying trapped traders.
Low to zero volume sections can be used to identify points in price with little to no trading, leaving a volume null/void behind. Typically sections like these represent gaps on a lower timeframe chart, which can be used as reference levels for targets and support/resistance.
Net volume can be used for same purposes as above, but for determining general intention of market participants it's a much more suitable tool than volume delta. According to auction market theory, low/no participation is considered to reject prices and high participation is considered to accept prices. With this concept in mind, unfinished auctions occur when participation is high at highs or high at lows, idea behind being that participants are showing willingness and interest to trade at higher or lower prices. Auction is considered finished when the opposite is true, i.e. when participants are not showing willingness to trade at higher/lower prices. In general, direction of unfinished auctions can be expected to continue shortly and direction of unfinished auctions can be expected to hold.
While shape of volume delta and net volume are usually similar, they're not the same thing and do not represent the same event under the hood. Volume delta at 0 does not necessarily mean participation is 0, but can also mean high participation with equal amount of buying and selling. With this distinction in mind, using volume delta and net volume in tandem has the benefit of being able to identify points in price with a lot of up and down price movement packed into a small area, i.e. consolidation. Points in price where price hangs around for an extended period of time can be used to identify levels of interest for re-tests and breakout opportunities.
Scoopy StacksWaffle Around Multiple
(Open, High, Low, Close) Stacks On
Pre/Post Market & (Daily, Weekly,
Monthly, Yearly) Sessions With
Meticulous Columns, Rows, Tooltips,
Colors, Custom Ideas, and Alerts.
Sessions Use Two Step Incremental Values
Default Value: (1) Shows Two Previous
(O, H, L, C); Increasing Value Swaps
Sessions With Next Two Stacks.
⬛️ KEY WORDS:
🟢 Crossover | 🔴 Crossunder
📗 High | 📕 Low
📔 Open | 📓 Close
🥇 First Idea | 🥈 Second Idea
🥉 Third Idea | 🎖️ Fourth Idea
🟥 ALERTS:
Default Option: (Per Bar)
Alerts Once Conditions Are Met
(Bar Close) Alerts When Bar Closes
Default Option: (Reg)
Alerts During Regular Market
Trading Hours, (0930-1600)
(Ext) Alerts During Extended
Market Hours, (1600-0930)
(24/7) Alerts All Day
Optional Preferences:
Regular Alerts - Stocks
Extended Alerts - Futures
24/7 Alerts - Crypto
🟧 STACKS:
Default Value: (1)
Incremental Stack Value, Increasing Value
Swaps Sessions With the Next Two Stacks
(✓) Swap Stacks?
Pre/Post Market High/Lows,
1-2 Day High/Lows, 1-2 Week High/Lows,
1-2 Month High/Lows, 1-2 Year High/Lows
( ) Swap Stacks?
Pre/Post Market Open/Close,
1-2 Day Open/Close, 1-2 Week Open/Close,
1-2 Month Open/Close, 1-2 Year Open/Close
🟨 EXAMPLES:
Default Stack:
🟢 | 📗 Pre Market High (PRE) | 4600.00
🔴 | 📕 Post Market Low (POST) | 420.00
Optional: (Open)
🟢 | 📔 Post Market Open (POST) | 4400.00
Optional: (Close)
🔴 | 📓 Pre Market Close (PRE) | 430.00
Default Stack Value: (1)
🔴 | 📗 1 Day High (1DH) | 460.00
Next Stack Value: (3)
🟢 | 📕 4 Day Low (4DL) | 420.00
Optional: (Open)
🔴 | 📔 2 Day Open (2DO) | 440.00
Optional: (Close)
🟢 | 📓 3 Day Close (3DC) | 430.00
Default Stack Value: (5)
🟢 | 📗 5 Week High (5WH) | 460.00
Next Stack Value: (7)
🔴 | 📕 8 Week Low (8WL) | 420.00
Optional: (Open)
🔴 | 📔 7 Week Open (7WO) | 4400.00
Optional: (Close)
🟢 | 📓 6 Week Close (6WC) | 430.00
Default Stack Value: (9)
🔴 | 📗 9 Month High (9MH) | 460.00
Next Stack Value: (11)
🟢 | 📕 12 Month Low (12ML) | 420.00
Optional: (Open)
🟢 | 📔 11 Month Open (11MO) | 4400.00
Optional: (Close)
🔴 | 📓 10 Month Close (10MC) | 430.00
Default Stack Value: (13)
🟢 | 📗 13 Year High (13YH) | 460.00
Next Stack Value: (15)
🟢 | 📕 16 Year Low (16YL) | 420.00
Optional: (Open)
🔴 | 📔 15 Year Open (15YO) | 4400.00
Optional: (Close)
🔴 | 📓 14 Year Close (14YC) | 430.00
🟩 TABLES:
Default Value: (1)
Moves Table Up, Down, Left, or Right
Based on Second Default Value
First Default Value: (Top Right)
Sets Table Placement, Middle Center
Allows Table To Move In All Directions
Second Default Value: (Default)
Fixed Table Position, Switching Values
Moves Direction of the Table
🟦 IDEAS:
(✓) Show Ideas?
Shows Four Ideas With Custom Texts
and Values; Ideas Are Based Around
Post-It Note Reminders with Alerts
Suggestions For Text Ideas:
Take Profit, Stop Loss, Trim, Hold,
Long, Short, Bounce Spot, Retest,
Chop, Support, Resistance, Buy, Sell
🟪 EXAMPLES:
Default Value: (5)
Shows the Custom Table Value For
Sorted Table Positions and Alerts
Default Text: (🥇)
Shown On First Table Cell and
Message Appearing On Alerts
Alert Shows: 🟢 | 🥇 | 5.00
Default Value: (10)
Shows the Custom Table Value For
Sorted Table Positions and Alerts
Default Text: (🥈)
Shown On Second Table Cell and
Message Appearing On Alerts
Alert Shows: 🔴 | 🥈 | 10.00
Default Value: (50)
Shows the Custom Table Value For
Sorted Table Positions and Alerts
Default Text: (🥉)
Shown On Third Table Cell and
Message Appearing On Alerts
Alert Shows: 🟢 | 🥉 | 50.00
Default Value: (100)
Shows the Custom Table Value For
Sorted Table Positions and Alerts
Default Text: (🎖️)
Shown On Fourth Table Cell and
Message Appearing On Alerts
Alert Shows: 🔴 | 🎖️ | 100.00
⬛️ REFERENCES:
Pre-market Highs & Lows on regular
trading hours (RTH) chart
By Twingall
Previous Day Week Highs & Lows
By Sbtnc
Screener for 40+ instruments
By QuantNomad
Daily Weekly Monthly Yearly Opens
By Meliksah55
Ribbit RangesBounce Around Multiple
(Open, High, Low, Close) Ranges
On Pre/Post Market & (Daily, Weekly,
Monthly, Yearly) Sessions With
Meticulous Lines, Labels, Tooltips,
Colors, Custom Ideas, and Alerts.
Sessions Use Two Step Incremental Values
Default Value: (1) Shows Two Previous
(O, H, L, C); Increasing Value Swaps
Sessions With Next Two Ranges.
⬛️ KEY WORDS:
🟢 Crossover | 🔴 Crossunder
📗 High | 📕 Low
📔 Open | 📓 Close
🥇 First Idea | 🥈 Second Idea
🥉 Third Idea | 🎖️ Fourth Idea
🟥 ALERTS:
Default Option: (Per Bar)
Alerts Once Conditions Are Met
(Bar Close) Alerts When Bar Closes
Default Option: (Reg)
Alerts During Regular Market
Trading Hours, (0930-1600)
(Ext) Alerts During Extended
Market Hours, (1600-0930)
(24/7) Alerts All Day
Optional Preferences:
Regular Alerts - Stocks
Extended Alerts - Futures
24/7 Alerts - Crypto
🟧 RANGES:
Default Value: (1)
Incremental Range Value, Increasing Value
Swaps Sessions With the Next Two Ranges
(✓) Swap Ranges?
Pre/Post Market High/Lows,
1-2 Day High/Lows, 1-2 Week High/Lows,
1-2 Month High/Lows, 1-2 Year High/Lows
( ) Swap Ranges?
Pre/Post Market Open/Close,
1-2 Day Open/Close, 1-2 Week Open/Close,
1-2 Month Open/Close, 1-2 Year Open/Close
🟨 EXAMPLES:
Default Range:
🟢 | 📗 Pre Market High (PRE) | 4600.00
🔴 | 📕 Post Market Low (POST) | 420.00
Optional: (Open)
🟢 | 📔 Post Market Open (POST) | 4400.00
Optional: (Close)
🔴 | 📓 Pre Market Close (PRE) | 430.00
Default Range Value: (1)
🔴 | 📗 1 Day High (1DH) | 460.00
Next Range Value: (3)
🟢 | 📕 4 Day Low (4DL) | 420.00
Optional: (Open)
🔴 | 📔 2 Day Open (2DO) | 440.00
Optional: (Close)
🟢 | 📓 3 Day Close (3DC) | 430.00
Default Range Value: (5)
🟢 | 📗 5 Week High (5WH) | 460.00
Next Range Value: (7)
🔴 | 📕 8 Week Low (8WL) | 420.00
Optional: (Open)
🔴 | 📔 7 Week Open (7WO) | 4400.00
Optional: (Close)
🟢 | 📓 6 Week Close (6WC) | 430.00
Default Range Value: (9)
🔴 | 📗 9 Month High (9MH) | 460.00
Next Range Value: (11)
🟢 | 📕 12 Month Low (12ML) | 420.00
Optional: (Open)
🟢 | 📔 11 Month Open (11MO) | 4400.00
Optional: (Close)
🔴 | 📓 10 Month Close (10MC) | 430.00
Default Range Value: (13)
🟢 | 📗 13 Year High (13YH) | 460.00
Next Range Value: (15)
🟢 | 📕 16 Year Low (16YL) | 420.00
Optional: (Open)
🔴 | 📔 15 Year Open (15YO) | 4400.00
Optional: (Close)
🔴 | 📓 14 Year Close (14YC) | 430.00
🟩 COLORS:
(✓) Swap Colors?
Text Color Is Shown Using
Background Color
( ) Swap Colors?
Background Color Is Shown
Using Text Color
🟦 IDEAS:
(✓) Show Ideas?
Plots Four Ideas With Custom Lines
and Labels; Ideas Are Based Around
Post-It Note Reminders with Alerts
Suggestions For Text Ideas:
Take Profit, Stop Loss, Trim, Hold,
Long, Short, Bounce Spot, Retest,
Chop, Support, Resistance, Buy, Sell
🟪 EXAMPLES:
Default Value: (5)
Shows the Custom Value For
Lines, Labels, and Alerts
Default Text: (🥇)
Shown On First Label and
Message Appearing On Alerts
Alert Shows: 🟢 | 🥇 | 5.00
Default Value: (10)
Shows the Custom Value For
Lines, Labels, and Alerts
Default Text: (🥈)
Shown On Second Label and
Message Appearing On Alerts
Alert Shows: 🔴 | 🥈 | 10.00
Default Value: (50)
Shows the Custom Value For
Lines, Labels, and Alerts
Default Text: (🥉)
Shown On Third Label and
Message Appearing On Alerts
Alert Shows: 🟢 | 🥉 | 50.00
Default Value: (100)
Shows the Custom Value For
Lines, Labels, and Alerts
Default Text: (🎖️)
Shown On Fourth Label and
Message Appearing On Alerts
Alert Shows: 🔴 | 🎖️ | 100.00
⬛️ REFERENCES:
Pre-market Highs & Lows on regular
trading hours (RTH) chart
By Twingall
Previous Day Week Highs & Lows
By Sbtnc
Screener for 40+ instruments
By QuantNomad
Daily Weekly Monthly Yearly Opens
By Meliksah55
Z-Score Based Momentum Zones with Advanced Volatility ChannelsThe indicator "Z-Score Based Momentum Zones with Advanced Volatility Channels" combines various technical analysis components, including volatility, price changes, and volume correction, to calculate Z-Scores and determine momentum zones and provide a visual representation of price movements and volatility based on multi timeframe highest high and lowest low values.
Note: THIS IS A IMPROVEMNT OF "Multi Time Frame Composite Bands" INDICATOR OF MINE WITH MORE EMPHASIS ON MOMENTUM ZONES CALULATED BASED ON Z-SCORES
Input Options
look_back_length: This input specifies the look-back period for calculating intraday volatility. correction It is set to a default value of 5.
lookback_period: This input sets the look-back period for calculating relative price change. The default value is 5.
zscore_period: This input determines the look-back period for calculating the Z-Score. The default value is 500.
avgZscore_length: This input defines the length of the momentum block used in calculations, with a default value of 14.
include_vc: This is a boolean input that, if set to true, enables volume correction in the calculations. By default, it is set to false.
1. Volatility Bands (Composite High and Low):
Composite High and Low: These are calculated by combining different moving averages of the high prices (high) and low prices (low). Specifically:
a_high and a_low are calculated as the average of the highest (ta.highest) and lowest (ta.lowest) high and low prices over various look-back periods (5, 8, 13, 21, 34) to capture short and long-term trends.
b_high and b_low are calculated as the simple moving average (SMA) of the high and low prices over different look-back periods (5, 8, 13) to smooth out the trends.
high_c and low_c are obtained by averaging a_high with b_high and a_low with b_low respectively.
IDV Correction Calulation : In this script the Intraday Volatility (IDV) is calculated as the simple moving average (SMA) of the daily high-low price range divided by the closing price. This measures how much the price fluctuates in a given period.
Composite High and Low with Volatility: The final c_high and c_low values are obtained by adjusting high_c and low_c with the calculated intraday volatility (IDV). These values are used to create the "Composite High" and "Composite Low" plots.
Composite High and Low with Volatility Correction: The final c_high and c_low values are obtained by adjusting high_c and low_c with the calculated intraday volatility (IDV). These values are used to create the "Composite High" and "Composite Low" plots.
2. Momentum Blocks Based on Z-Score:
Relative Price Change (RPC):
The Relative Price Change (rpdev) is calculated as the difference between the current high-low-close average (hlc3) and the previous simple moving average (psma_hlc3) of the same quantity. This measures the change in price over time.
Additionally, std_hlc3 is calculated as the standard deviation of the hlc3 values over a specified look-back period. The standard deviation quantifies the dispersion or volatility in the price data.
The rpdev is then divided by the std_hlc3 to normalize the price change by the volatility. This normalization ensures that the price change is expressed in terms of standard deviations, which is a common practice in quantitative analysis.
Essentially, the rpdev represents how many standard deviations the current price is away from the previous moving average.
Volume Correction (VC): If the include_vc input is set to true, volume correction is applied by dividing the trading volume by the previous simple moving average of the volume (psma_volume). This accounts for changes in trading activity.
Volume Corrected Relative Price Change (VCRPD): The vcrpd is calculated by multiplying the rpdev by the volume correction factor (vc). This incorporates both price changes and volume data.
Z-Scores: The Z-scores are calculated by taking the difference between the vcrpd and the mean (mean_vcrpd) and then dividing it by the standard deviation (stddev_vcrpd). Z-scores measure how many standard deviations a value is away from the mean. They help identify whether a value is unusually high or low compared to its historical distribution.
Momentum Blocks: The "Momentum Blocks" are essentially derived from the Z-scores (avgZScore). The script assigns different colors to the "Fill Area" based on predefined Z-score ranges. These colored areas represent different momentum zones:
Positive Z-scores indicate bullish momentum, and different shades of green are used to fill the area.
Negative Z-scores indicate bearish momentum, and different shades of red are used.
Z-scores near zero (between -0.25 and 0.25) suggest neutrality, and a yellow color is used.
Moving Average - TREND POWER v1.1- (AS)0)NOTE:
This is first version of this indicator. It's way more complicated than it should be. Check out Moving Average-TREND POWER v2.1-(AS), its waaaaay less complicated and might be better.Enjoy...
1)INTRODUCTION/MAIN IDEA:
In simpliest form this script is a trend indicator that rises if Moving average if below price or falling if above and going back to zero if there is a crossover with a price. To use this indicator you will have to adjust settings of MAs and choose conditions for calculation.
While using the indicator we might have to define CROSS types or which MAs to use. List of what cross types are defined in the script and Conditiones to choose from.The list will be below.
2) COMPOSITION:
-MA1 can be defined by user in settings, possible types: SMA, EMA, RMA, HMA, TEMA, DEMA, LSMA, WMA.
-MA2 is always ALMA
3) OVERLAY:
Default is false but if you want to see MA1/2 on chart you can change code to true and then turn on overlay in settings. Most plot settings are avalible only in OV=false.
if OV=true possible plots ->MA1/2, plotshape when choosen cross type
if OV=false -> main indicator,TSHs,Cross counter
4)PRESETS :
Indicator has three modes that can be selected in settings. First two are presets and do not require selecting conditions as they set be default.
-SIMPLE - most basic
-ABSOLUTE - shows only positive values when market is trending or zero when in range
-CUSTOM - main and the most advanced form that will require setting conditions to use in calculating trend
4.1)SIMPLE – this is the most basic form of conditions that uses only First MA. If MA1 is below selected source (High/Low(High for Uptrend and Low for DNtrend or OHLC4) on every bar value rises by 0.02. if it above Low or OHLC4 it falls by 0.02 with every bar. If there is a cross of MA with price value is zero. This preset uses CROSS_1_ULT(list of all cross types below)
4.2) ABSOLUTE – does not show direction of the trend unlike others and uses both MA1 and MA2. Uses CROSS type 123_ULT
4.3) CUSTOM – here we define conditions manually. This mode is defined in parts (5-8 of description)
5)SETTINGS:
SOURCE/OVERLAY(line1) – select source of calculation form MA1/MA2, select for overlay true (look point 3)
TRESHOLDS(line2). – set upper and lower THS, turn TSHs on/off
MA1(line3) – Length/type of MA/Offset(only if MA type is LSM)
MA2(line4) – length/offset/sigma -(remember to set ma in the way that in Uptrend MA2MA1 in DNtrend)
Use faster MA types for short term trends and slower types / bigger periods for longer term trends, defval MA1/2 settings
are pretty much random so using them is not recomended.
CROSSshape(line5) – choose which cross type you want to plot on chart(only in OV=true) or what type you want to use in counting via for loops,
CROSScount(line6) – set lookback for type of cross choosen above
BOOLs in lines 5 and 6 - plotshape if OV=true/plot CROSScount histogram (if OV=false)
Lines 7 and 8 – PRESET we want to use /SRC for calculation of indicator/are conditions described below/which MAs to use/Condition for
reducing value t 0 - (if PRESET is ABSOLUTE or SIMPLE only SRC should be set(Line 8 does not matter if not CUSTOM))
5)SOURCE for CONDS:
Here you can choose between H/L and OHLC. If H/L value grow when MAlow. If OHLC MAOHLC. H/L is set by default and recommended. This can be selected for all presets not only CUSTOM
6)CROSS types LIST:
“1 means MA1, 2 is MA2 and 3 I cross of MA1/MA2. L stands for low and H for high so for example 2H means cross of MA2 and high”
NAME -DEFINITION Number of possible crosses
1L - cross of MA1 and low 1
1H - cross of MA1 and high 1
1HL - cross of MA1 and low or MA1 and high 2 -1L/1H
2L - cross of MA2 and low 1
2H - cross of MA2 and high 1
2HL - cross of MA2 and low or MA1 and high 2 -2L/2H
12L - cross of MA1 and low or MA2 and low 2 -1L/2L
12H - cross of MA1 and high or MA2 and high 2 -1H/2H
12HL - MA1/2 and high/low 4 -1H/1L/2H/2L
3 -cross of MA1 and MA2 1
123HL -crosses from 12HL or 3 5 -12HL/3
1_ULT - cross of MA1 with any of price sources(close,low,high,ohlc4 etc…)
2_ULT - cross of MA2 with any of price sources(close,low,high,ohlc4 etc…)
123_ULT – all crosses possible of MA1/2 (all of the above so a lot)
7)CRS CONDS:
“conditions to reduce value back to zero”
>/< - 0 if indicator shows Uptrend and there’s a cross with high of selected MA or 0 if in DNtrend and cross with low. Better for UP/DN trend detection
ALL – 0 if cross of MA with high or low no matter the trend, better for detecting consolidation
ULT – if any cross of selected MA, most crosses so goes to 0 most often
8)MA selection and CONDS:
-MA1: only MA1 is used,if MA1 below price value grows and the other way around
MA1price =-0.02
-MA2 – only MA2 is used, same conditions as MA1 but using MA2
MA2price =-0.02
-BOTH – MA1 and MA2 used, grows when MA1 if below, grows faster if MA1 and MA2 are below and fastest when MA1 and MA2 are below and MA2price=-0.02
-MA1 and MA2 >price=-0.03
-MA1 and MA2 ?price and MA2>MA1=-0.04
9)CONDITIONS SELECTION SUMMARRY:
So when CUSTOM we choose :
1)SOURCE – H/L or OHLC
2)MAs – MA1/MA2/BOTH
3)CRS CONDS (>/<,ALL,ULT)
So for example...
if we take MA1 and ALL value will go to zero if 1HL
if MA1 and >/< - 0 if 1L or 1H (depending if value is positive or negative).(1L or 1H)
If ALL and BOTH zero when 12HL
If BOTH and ULT value goes back to zero if Theres any cross of MA1/MA2 with price or cross of MA1 and MA2.(123_ULT)
If >/< and BOTH – 0 if 12L in DNtrend or 12H if UPtrend
10) OTHERS
-script was created on EURUSD 5M and wasn't tested on different markets
-default values of MA1/MA2 aren't optimalized so do not
-There might be a logical error in the script so let me know if you find it (most probably in 'BOTH')
-thanks to @AlifeToMake for help
-if you have any ideas to improve let me know
-there are also tooltips to help
CNTLibraryLibrary "CNTLibrary"
Custom Functions To Help Code In Pinescript V5
Coded By Christian Nataliano
First Coded In 10/06/2023
Last Edited In 22/06/2023
Huge Shout Out To © ZenAndTheArtOfTrading and his ZenLibrary V5, Some Of The Custom Functions Were Heavily Inspired By Matt's Work & His Pine Script Mastery Course
Another Shout Out To The TradingView's Team Library ta V5
//====================================================================================================================================================
// Custom Indicator Functions
//====================================================================================================================================================
GetKAMA(KAMA_lenght, Fast_KAMA, Slow_KAMA)
Calculates An Adaptive Moving Average Based On Perry J Kaufman's Calculations
Parameters:
KAMA_lenght (int) : Is The KAMA Lenght
Fast_KAMA (int) : Is The KAMA's Fastes Moving Average
Slow_KAMA (int) : Is The KAMA's Slowest Moving Average
Returns: Float Of The KAMA's Current Calculations
GetMovingAverage(Source, Lenght, Type)
Get Custom Moving Averages Values
Parameters:
Source (float) : Of The Moving Average, Defval = close
Lenght (simple int) : Of The Moving Average, Defval = 50
Type (string) : Of The Moving Average, Defval = Exponential Moving Average
Returns: The Moving Average Calculation Based On Its Given Source, Lenght & Calculation Type (Please Call Function On Global Scope)
GetDecimals()
Calculates how many decimals are on the quote price of the current market © ZenAndTheArtOfTrading
Returns: The current decimal places on the market quote price
Truncate(number, decimalPlaces)
Truncates (cuts) excess decimal places © ZenAndTheArtOfTrading
Parameters:
number (float)
decimalPlaces (simple float)
Returns: The given number truncated to the given decimalPlaces
ToWhole(number)
Converts pips into whole numbers © ZenAndTheArtOfTrading
Parameters:
number (float)
Returns: The converted number
ToPips(number)
Converts whole numbers back into pips © ZenAndTheArtOfTrading
Parameters:
number (float)
Returns: The converted number
GetPctChange(value1, value2, lookback)
Gets the percentage change between 2 float values over a given lookback period © ZenAndTheArtOfTrading
Parameters:
value1 (float)
value2 (float)
lookback (int)
BarsAboveMA(lookback, ma)
Counts how many candles are above the MA © ZenAndTheArtOfTrading
Parameters:
lookback (int)
ma (float)
Returns: The bar count of how many recent bars are above the MA
BarsBelowMA(lookback, ma)
Counts how many candles are below the MA © ZenAndTheArtOfTrading
Parameters:
lookback (int)
ma (float)
Returns: The bar count of how many recent bars are below the EMA
BarsCrossedMA(lookback, ma)
Counts how many times the EMA was crossed recently © ZenAndTheArtOfTrading
Parameters:
lookback (int)
ma (float)
Returns: The bar count of how many times price recently crossed the EMA
GetPullbackBarCount(lookback, direction)
Counts how many green & red bars have printed recently (ie. pullback count) © ZenAndTheArtOfTrading
Parameters:
lookback (int)
direction (int)
Returns: The bar count of how many candles have retraced over the given lookback & direction
GetSwingHigh(Lookback, SwingType)
Check If Price Has Made A Recent Swing High
Parameters:
Lookback (int) : Is For The Swing High Lookback Period, Defval = 7
SwingType (int) : Is For The Swing High Type Of Identification, Defval = 1
Returns: A Bool - True If Price Has Made A Recent Swing High
GetSwingLow(Lookback, SwingType)
Check If Price Has Made A Recent Swing Low
Parameters:
Lookback (int) : Is For The Swing Low Lookback Period, Defval = 7
SwingType (int) : Is For The Swing Low Type Of Identification, Defval = 1
Returns: A Bool - True If Price Has Made A Recent Swing Low
//====================================================================================================================================================
// Custom Risk Management Functions
//====================================================================================================================================================
CalculateStopLossLevel(OrderType, Entry, StopLoss)
Calculate StopLoss Level
Parameters:
OrderType (int) : Is To Determine A Long / Short Position, Defval = 1
Entry (float) : Is The Entry Level Of The Order, Defval = na
StopLoss (float) : Is The Custom StopLoss Distance, Defval = 2x ATR Below Close
Returns: Float - The StopLoss Level In Actual Price As A
CalculateStopLossDistance(OrderType, Entry, StopLoss)
Calculate StopLoss Distance In Pips
Parameters:
OrderType (int) : Is To Determine A Long / Short Position, Defval = 1
Entry (float) : Is The Entry Level Of The Order, NEED TO INPUT PARAM
StopLoss (float) : Level Based On Previous Calculation, NEED TO INPUT PARAM
Returns: Float - The StopLoss Value In Pips
CalculateTakeProfitLevel(OrderType, Entry, StopLossDistance, RiskReward)
Calculate TakeProfit Level
Parameters:
OrderType (int) : Is To Determine A Long / Short Position, Defval = 1
Entry (float) : Is The Entry Level Of The Order, Defval = na
StopLossDistance (float)
RiskReward (float)
Returns: Float - The TakeProfit Level In Actual Price
CalculateTakeProfitDistance(OrderType, Entry, TakeProfit)
Get TakeProfit Distance In Pips
Parameters:
OrderType (int) : Is To Determine A Long / Short Position, Defval = 1
Entry (float) : Is The Entry Level Of The Order, NEED TO INPUT PARAM
TakeProfit (float) : Level Based On Previous Calculation, NEED TO INPUT PARAM
Returns: Float - The TakeProfit Value In Pips
CalculateConversionCurrency(AccountCurrency, SymbolCurrency, BaseCurrency)
Get The Conversion Currecny Between Current Account Currency & Current Pair's Quoted Currency (FOR FOREX ONLY)
Parameters:
AccountCurrency (simple string) : Is For The Account Currency Used
SymbolCurrency (simple string) : Is For The Current Symbol Currency (Front Symbol)
BaseCurrency (simple string) : Is For The Current Symbol Base Currency (Back Symbol)
Returns: Tuple Of A Bollean (Convert The Currency ?) And A String (Converted Currency)
CalculateConversionRate(ConvertCurrency, ConversionRate)
Get The Conversion Rate Between Current Account Currency & Current Pair's Quoted Currency (FOR FOREX ONLY)
Parameters:
ConvertCurrency (bool) : Is To Check If The Current Symbol Needs To Be Converted Or Not
ConversionRate (float) : Is The Quoted Price Of The Conversion Currency (Input The request.security Function Here)
Returns: Float Price Of Conversion Rate (If In The Same Currency Than Return Value Will Be 1.0)
LotSize(LotSizeSimple, Balance, Risk, SLDistance, ConversionRate)
Get Current Lot Size
Parameters:
LotSizeSimple (bool) : Is To Toggle Lot Sizing Calculation (Simple Is Good Enough For Stocks & Crypto, Whilst Complex Is For Forex)
Balance (float) : Is For The Current Account Balance To Calculate The Lot Sizing Based Off
Risk (float) : Is For The Current Risk Per Trade To Calculate The Lot Sizing Based Off
SLDistance (float) : Is The Current Position StopLoss Distance From Its Entry Price
ConversionRate (float) : Is The Currency Conversion Rate (Used For Complex Lot Sizing Only)
Returns: Float - Position Size In Units
ToLots(Units)
Converts Units To Lots
Parameters:
Units (float) : Is For How Many Units Need To Be Converted Into Lots (Minimun 1000 Units)
Returns: Float - Position Size In Lots
ToUnits(Lots)
Converts Lots To Units
Parameters:
Lots (float) : Is For How Many Lots Need To Be Converted Into Units (Minimun 0.01 Units)
Returns: Int - Position Size In Units
ToLotsInUnits(Units)
Converts Units To Lots Than Back To Units
Parameters:
Units (float) : Is For How Many Units Need To Be Converted Into Lots (Minimun 1000 Units)
Returns: Float - Position Size In Lots That Were Rounded To Units
ATRTrail(OrderType, SourceType, ATRPeriod, ATRMultiplyer, SwingLookback)
Calculate ATR Trailing Stop
Parameters:
OrderType (int) : Is To Determine A Long / Short Position, Defval = 1
SourceType (int) : Is To Determine Where To Calculate The ATR Trailing From, Defval = close
ATRPeriod (simple int) : Is To Change Its ATR Period, Defval = 20
ATRMultiplyer (float) : Is To Change Its ATR Trailing Distance, Defval = 1
SwingLookback (int) : Is To Change Its Swing HiLo Lookback (Only From Source Type 5), Defval = 7
Returns: Float - Number Of The Current ATR Trailing
DangerZone(WinRate, AvgRRR, Filter)
Calculate Danger Zone Of A Given Strategy
Parameters:
WinRate (float) : Is The Strategy WinRate
AvgRRR (float) : Is The Strategy Avg RRR
Filter (float) : Is The Minimum Profit It Needs To Be Out Of BE Zone, Defval = 3
Returns: Int - Value, 1 If Out Of Danger Zone, 0 If BE, -1 If In Danger Zone
IsQuestionableTrades(TradeTP, TradeSL)
Checks For Questionable Trades (Which Are Trades That Its TP & SL Level Got Hit At The Same Candle)
Parameters:
TradeTP (float) : Is The Trade In Question Take Profit Level
TradeSL (float) : Is The Trade In Question Stop Loss Level
Returns: Bool - True If The Last Trade Was A "Questionable Trade"
//====================================================================================================================================================
// Custom Strategy Functions
//====================================================================================================================================================
OpenLong(EntryID, LotSize, LimitPrice, StopPrice, Comment, CommentValue)
Open A Long Order Based On The Given Params
Parameters:
EntryID (string) : Is The Trade Entry ID, Defval = "Long"
LotSize (float) : Is The Lot Size Of The Trade, Defval = 1
LimitPrice (float) : Is The Limit Order Price To Set The Order At, Defval = Na / Market Order Execution
StopPrice (float) : Is The Stop Order Price To Set The Order At, Defval = Na / Market Order Execution
Comment (string) : Is The Order Comment, Defval = Long Entry Order
CommentValue (string) : Is For Custom Values In The Order Comment, Defval = Na
Returns: Void
OpenShort(EntryID, LotSize, LimitPrice, StopPrice, Comment, CommentValue)
Open A Short Order Based On The Given Params
Parameters:
EntryID (string) : Is The Trade Entry ID, Defval = "Short"
LotSize (float) : Is The Lot Size Of The Trade, Defval = 1
LimitPrice (float) : Is The Limit Order Price To Set The Order At, Defval = Na / Market Order Execution
StopPrice (float) : Is The Stop Order Price To Set The Order At, Defval = Na / Market Order Execution
Comment (string) : Is The Order Comment, Defval = Short Entry Order
CommentValue (string) : Is For Custom Values In The Order Comment, Defval = Na
Returns: Void
TP_SLExit(FromID, TPLevel, SLLevel, PercentageClose, Comment, CommentValue)
Exits Based On Predetermined TP & SL Levels
Parameters:
FromID (string) : Is The Trade ID That The TP & SL Levels Be Palced
TPLevel (float) : Is The Take Profit Level
SLLevel (float) : Is The StopLoss Level
PercentageClose (float) : Is The Amount To Close The Order At (In Percentage) Defval = 100
Comment (string) : Is The Order Comment, Defval = Exit Order
CommentValue (string) : Is For Custom Values In The Order Comment, Defval = Na
Returns: Void
CloseLong(ExitID, PercentageClose, Comment, CommentValue, Instant)
Exits A Long Order Based On A Specified Condition
Parameters:
ExitID (string) : Is The Trade ID That Will Be Closed, Defval = "Long"
PercentageClose (float) : Is The Amount To Close The Order At (In Percentage) Defval = 100
Comment (string) : Is The Order Comment, Defval = Exit Order
CommentValue (string) : Is For Custom Values In The Order Comment, Defval = Na
Instant (bool) : Is For Exit Execution Type, Defval = false
Returns: Void
CloseShort(ExitID, PercentageClose, Comment, CommentValue, Instant)
Exits A Short Order Based On A Specified Condition
Parameters:
ExitID (string) : Is The Trade ID That Will Be Closed, Defval = "Short"
PercentageClose (float) : Is The Amount To Close The Order At (In Percentage) Defval = 100
Comment (string) : Is The Order Comment, Defval = Exit Order
CommentValue (string) : Is For Custom Values In The Order Comment, Defval = Na
Instant (bool) : Is For Exit Execution Type, Defval = false
Returns: Void
BrokerCheck(Broker)
Checks Traded Broker With Current Loaded Chart Broker
Parameters:
Broker (string) : Is The Current Broker That Is Traded
Returns: Bool - True If Current Traded Broker Is Same As Loaded Chart Broker
OpenPC(LicenseID, OrderType, UseLimit, LimitPrice, SymbolPrefix, Symbol, SymbolSuffix, Risk, SL, TP, OrderComment, Spread)
Compiles Given Parameters Into An Alert String Format To Open Trades Using Pine Connector
Parameters:
LicenseID (string) : Is The Users PineConnector LicenseID
OrderType (int) : Is The Desired OrderType To Open
UseLimit (bool) : Is If We Want To Enter The Position At Exactly The Previous Closing Price
LimitPrice (float) : Is The Limit Price Of The Trade (Only For Pending Orders)
SymbolPrefix (string) : Is The Current Symbol Prefix (If Any)
Symbol (string) : Is The Traded Symbol
SymbolSuffix (string) : Is The Current Symbol Suffix (If Any)
Risk (float) : Is The Trade Risk Per Trade / Fixed Lot Sizing
SL (float) : Is The Trade SL In Price / In Pips
TP (float) : Is The Trade TP In Price / In Pips
OrderComment (string) : Is The Executed Trade Comment
Spread (float) : is The Maximum Spread For Execution
Returns: String - Pine Connector Order Syntax Alert Message
ClosePC(LicenseID, OrderType, SymbolPrefix, Symbol, SymbolSuffix)
Compiles Given Parameters Into An Alert String Format To Close Trades Using Pine Connector
Parameters:
LicenseID (string) : Is The Users PineConnector LicenseID
OrderType (int) : Is The Desired OrderType To Close
SymbolPrefix (string) : Is The Current Symbol Prefix (If Any)
Symbol (string) : Is The Traded Symbol
SymbolSuffix (string) : Is The Current Symbol Suffix (If Any)
Returns: String - Pine Connector Order Syntax Alert Message
//====================================================================================================================================================
// Custom Backtesting Calculation Functions
//====================================================================================================================================================
CalculatePNL(EntryPrice, ExitPrice, LotSize, ConversionRate)
Calculates Trade PNL Based On Entry, Eixt & Lot Size
Parameters:
EntryPrice (float) : Is The Trade Entry
ExitPrice (float) : Is The Trade Exit
LotSize (float) : Is The Trade Sizing
ConversionRate (float) : Is The Currency Conversion Rate (Used For Complex Lot Sizing Only)
Returns: Float - The Current Trade PNL
UpdateBalance(PrevBalance, PNL)
Updates The Previous Ginve Balance To The Next PNL
Parameters:
PrevBalance (float) : Is The Previous Balance To Be Updated
PNL (float) : Is The Current Trade PNL To Be Added
Returns: Float - The Current Updated PNL
CalculateSlpComm(PNL, MaxRate)
Calculates Random Slippage & Commisions Fees Based On The Parameters
Parameters:
PNL (float) : Is The Current Trade PNL
MaxRate (float) : Is The Upper Limit (In Percentage) Of The Randomized Fee
Returns: Float - A Percentage Fee Of The Current Trade PNL
UpdateDD(MaxBalance, Balance)
Calculates & Updates The DD Based On Its Given Parameters
Parameters:
MaxBalance (float) : Is The Maximum Balance Ever Recorded
Balance (float) : Is The Current Account Balance
Returns: Float - The Current Strategy DD
CalculateWR(TotalTrades, LongID, ShortID)
Calculate The Total, Long & Short Trades Win Rate
Parameters:
TotalTrades (int) : Are The Current Total Trades That The Strategy Has Taken
LongID (string) : Is The Order ID Of The Long Trades Of The Strategy
ShortID (string) : Is The Order ID Of The Short Trades Of The Strategy
Returns: Tuple Of Long WR%, Short WR%, Total WR%, Total Winning Trades, Total Losing Trades, Total Long Trades & Total Short Trades
CalculateAvgRRR(WinTrades, LossTrades)
Calculates The Overall Strategy Avg Risk Reward Ratio
Parameters:
WinTrades (int) : Are The Strategy Winning Trades
LossTrades (int) : Are The Strategy Losing Trades
Returns: Float - The Average RRR Values
CAGR(StartTime, StartPrice, EndTime, EndPrice)
Calculates The CAGR Over The Given Time Period © TradingView
Parameters:
StartTime (int) : Is The Starting Time Of The Calculation
StartPrice (float) : Is The Starting Price Of The Calculation
EndTime (int) : Is The Ending Time Of The Calculation
EndPrice (float) : Is The Ending Price Of The Calculation
Returns: Float - The CAGR Values
//====================================================================================================================================================
// Custom Plot Functions
//====================================================================================================================================================
EditLabels(LabelID, X1, Y1, Text, Color, TextColor, EditCondition, DeleteCondition)
Edit / Delete Labels
Parameters:
LabelID (label) : Is The ID Of The Selected Label
X1 (int) : Is The X1 Coordinate IN BARINDEX Xloc
Y1 (float) : Is The Y1 Coordinate IN PRICE Yloc
Text (string) : Is The Text Than Wants To Be Written In The Label
Color (color) : Is The Color Value Change Of The Label Text
TextColor (color)
EditCondition (int) : Is The Edit Condition of The Line (Setting Location / Color)
DeleteCondition (bool) : Is The Delete Condition Of The Line If Ture Deletes The Prev Itteration Of The Line
Returns: Void
EditLine(LineID, X1, Y1, X2, Y2, Color, EditCondition, DeleteCondition)
Edit / Delete Lines
Parameters:
LineID (line) : Is The ID Of The Selected Line
X1 (int) : Is The X1 Coordinate IN BARINDEX Xloc
Y1 (float) : Is The Y1 Coordinate IN PRICE Yloc
X2 (int) : Is The X2 Coordinate IN BARINDEX Xloc
Y2 (float) : Is The Y2 Coordinate IN PRICE Yloc
Color (color) : Is The Color Value Change Of The Line
EditCondition (int) : Is The Edit Condition of The Line (Setting Location / Color)
DeleteCondition (bool) : Is The Delete Condition Of The Line If Ture Deletes The Prev Itteration Of The Line
Returns: Void
//====================================================================================================================================================
// Custom Display Functions (Using Tables)
//====================================================================================================================================================
FillTable(TableID, Column, Row, Title, Value, BgColor, TextColor, ToolTip)
Filling The Selected Table With The Inputed Information
Parameters:
TableID (table) : Is The Table ID That Wants To Be Edited
Column (int) : Is The Current Column Of The Table That Wants To Be Edited
Row (int) : Is The Current Row Of The Table That Wants To Be Edited
Title (string) : Is The String Title Of The Current Cell Table
Value (string) : Is The String Value Of The Current Cell Table
BgColor (color) : Is The Selected Color For The Current Table
TextColor (color) : Is The Selected Color For The Current Table
ToolTip (string) : Is The ToolTip Of The Current Cell In The Table
Returns: Void
DisplayBTResults(TableID, BgColor, TextColor, StartingBalance, Balance, DollarReturn, TotalPips, MaxDD)
Filling The Selected Table With The Inputed Information
Parameters:
TableID (table) : Is The Table ID That Wants To Be Edited
BgColor (color) : Is The Selected Color For The Current Table
TextColor (color) : Is The Selected Color For The Current Table
StartingBalance (float) : Is The Account Starting Balance
Balance (float)
DollarReturn (float) : Is The Account Dollar Reture
TotalPips (float) : Is The Total Pips Gained / loss
MaxDD (float) : Is The Maximum Drawdown Over The Backtesting Period
Returns: Void
DisplayBTResultsV2(TableID, BgColor, TextColor, TotalWR, QTCount, LongWR, ShortWR, InitialCapital, CumProfit, CumFee, AvgRRR, MaxDD, CAGR, MeanDD)
Filling The Selected Table With The Inputed Information
Parameters:
TableID (table) : Is The Table ID That Wants To Be Edited
BgColor (color) : Is The Selected Color For The Current Table
TextColor (color) : Is The Selected Color For The Current Table
TotalWR (float) : Is The Strategy Total WR In %
QTCount (int) : Is The Strategy Questionable Trades Count
LongWR (float) : Is The Strategy Total WR In %
ShortWR (float) : Is The Strategy Total WR In %
InitialCapital (float) : Is The Strategy Initial Starting Capital
CumProfit (float) : Is The Strategy Ending Cumulative Profit
CumFee (float) : Is The Strategy Ending Cumulative Fee (Based On Randomized Fee Assumptions)
AvgRRR (float) : Is The Strategy Average Risk Reward Ratio
MaxDD (float) : Is The Strategy Maximum DrawDown In Its Backtesting Period
CAGR (float) : Is The Strategy Compounded Average GRowth In %
MeanDD (float) : Is The Strategy Mean / Average Drawdown In The Backtesting Period
Returns: Void
//====================================================================================================================================================
// Custom Pattern Detection Functions
//====================================================================================================================================================
BullFib(priceLow, priceHigh, fibRatio)
Calculates A Bullish Fibonacci Value (From Swing Low To High) © ZenAndTheArtOfTrading
Parameters:
priceLow (float)
priceHigh (float)
fibRatio (float)
Returns: The Fibonacci Value Of The Given Ratio Between The Two Price Points
BearFib(priceLow, priceHigh, fibRatio)
Calculates A Bearish Fibonacci Value (From Swing High To Low) © ZenAndTheArtOfTrading
Parameters:
priceLow (float)
priceHigh (float)
fibRatio (float)
Returns: The Fibonacci Value Of The Given Ratio Between The Two Price Points
GetBodySize()
Gets The Current Candle Body Size IN POINTS © ZenAndTheArtOfTrading
Returns: The Current Candle Body Size IN POINTS
GetTopWickSize()
Gets The Current Candle Top Wick Size IN POINTS © ZenAndTheArtOfTrading
Returns: The Current Candle Top Wick Size IN POINTS
GetBottomWickSize()
Gets The Current Candle Bottom Wick Size IN POINTS © ZenAndTheArtOfTrading
Returns: The Current Candle Bottom Wick Size IN POINTS
GetBodyPercent()
Gets The Current Candle Body Size As A Percentage Of Its Entire Size Including Its Wicks © ZenAndTheArtOfTrading
Returns: The Current Candle Body Size IN PERCENTAGE
GetTopWickPercent()
Gets The Current Top Wick Size As A Percentage Of Its Entire Body Size
Returns: Float - The Current Candle Top Wick Size IN PERCENTAGE
GetBottomWickPercent()
Gets The Current Bottom Wick Size As A Percentage Of Its Entire Bodu Size
Returns: Float - The Current Candle Bottom Size IN PERCENTAGE
BullishEC(Allowance, RejectionWickSize, EngulfWick, NearSwings, SwingLookBack)
Checks If The Current Bar Is A Bullish Engulfing Candle
Parameters:
Allowance (int) : To Give Flexibility Of Engulfing Pattern Detection In Markets That Have Micro Gaps, Defval = 0
RejectionWickSize (float) : To Filter Out long (Upper And Lower) Wick From The Bullsih Engulfing Pattern, Defval = na
EngulfWick (bool) : To Specify If We Want The Pattern To Also Engulf Its Upper & Lower Previous Wicks, Defval = false
NearSwings (bool) : To Specify If We Want The Pattern To Be Near A Recent Swing Low, Defval = true
SwingLookBack (int) : To Specify How Many Bars Back To Detect A Recent Swing Low, Defval = 10
Returns: Bool - True If The Current Bar Matches The Requirements of a Bullish Engulfing Candle
BearishEC(Allowance, RejectionWickSize, EngulfWick, NearSwings, SwingLookBack)
Checks If The Current Bar Is A Bearish Engulfing Candle
Parameters:
Allowance (int) : To Give Flexibility Of Engulfing Pattern Detection In Markets That Have Micro Gaps, Defval = 0
RejectionWickSize (float) : To Filter Out long (Upper And Lower) Wick From The Bearish Engulfing Pattern, Defval = na
EngulfWick (bool) : To Specify If We Want The Pattern To Also Engulf Its Upper & Lower Previous Wicks, Defval = false
NearSwings (bool) : To Specify If We Want The Pattern To Be Near A Recent Swing High, Defval = true
SwingLookBack (int) : To Specify How Many Bars Back To Detect A Recent Swing High, Defval = 10
Returns: Bool - True If The Current Bar Matches The Requirements of a Bearish Engulfing Candle
Hammer(Fib, ColorMatch, NearSwings, SwingLookBack, ATRFilterCheck, ATRPeriod)
Checks If The Current Bar Is A Hammer Candle
Parameters:
Fib (float) : To Specify Which Fibonacci Ratio To Use When Determining The Hammer Candle, Defval = 0.382 Ratio
ColorMatch (bool) : To Filter Only Bullish Closed Hammer Candle Pattern, Defval = false
NearSwings (bool) : To Specify If We Want The Doji To Be Near A Recent Swing Low, Defval = true
SwingLookBack (int) : To Specify How Many Bars Back To Detect A Recent Swing Low, Defval = 10
ATRFilterCheck (float) : To Filter Smaller Hammer Candles That Might Be Better Classified As A Doji Candle, Defval = 1
ATRPeriod (simple int) : To Change ATR Period Of The ATR Filter, Defval = 20
Returns: Bool - True If The Current Bar Matches The Requirements of a Hammer Candle
Star(Fib, ColorMatch, NearSwings, SwingLookBack, ATRFilterCheck, ATRPeriod)
Checks If The Current Bar Is A Hammer Candle
Parameters:
Fib (float) : To Specify Which Fibonacci Ratio To Use When Determining The Hammer Candle, Defval = 0.382 Ratio
ColorMatch (bool) : To Filter Only Bullish Closed Hammer Candle Pattern, Defval = false
NearSwings (bool) : To Specify If We Want The Doji To Be Near A Recent Swing Low, Defval = true
SwingLookBack (int) : To Specify How Many Bars Back To Detect A Recent Swing Low, Defval = 10
ATRFilterCheck (float) : To Filter Smaller Hammer Candles That Might Be Better Classified As A Doji Candle, Defval = 1
ATRPeriod (simple int) : To Change ATR Period Of The ATR Filter, Defval = 20
Returns: Bool - True If The Current Bar Matches The Requirements of a Hammer Candle
Doji(MaxWickSize, MaxBodySize, DojiType, NearSwings, SwingLookBack)
Checks If The Current Bar Is A Doji Candle
Parameters:
MaxWickSize (float) : To Specify The Maximum Lenght Of Its Upper & Lower Wick, Defval = 2
MaxBodySize (float) : To Specify The Maximum Lenght Of Its Candle Body IN PERCENT, Defval = 0.05
DojiType (int)
NearSwings (bool) : To Specify If We Want The Doji To Be Near A Recent Swing High / Low (Only In Dragonlyf / Gravestone Mode), Defval = true
SwingLookBack (int) : To Specify How Many Bars Back To Detect A Recent Swing High / Low (Only In Dragonlyf / Gravestone Mode), Defval = 10
Returns: Bool - True If The Current Bar Matches The Requirements of a Doji Candle
BullishIB(Allowance, RejectionWickSize, EngulfWick, NearSwings, SwingLookBack)
Checks If The Current Bar Is A Bullish Harami Candle
Parameters:
Allowance (int) : To Give Flexibility Of Harami Pattern Detection In Markets That Have Micro Gaps, Defval = 0
RejectionWickSize (float) : To Filter Out long (Upper And Lower) Wick From The Bullsih Harami Pattern, Defval = na
EngulfWick (bool) : To Specify If We Want The Pattern To Also Engulf Its Upper & Lower Previous Wicks, Defval = false
NearSwings (bool) : To Specify If We Want The Pattern To Be Near A Recent Swing Low, Defval = true
SwingLookBack (int) : To Specify How Many Bars Back To Detect A Recent Swing Low, Defval = 10
Returns: Bool - True If The Current Bar Matches The Requirements of a Bullish Harami Candle
BearishIB(Allowance, RejectionWickSize, EngulfWick, NearSwings, SwingLookBack)
Checks If The Current Bar Is A Bullish Harami Candle
Parameters:
Allowance (int) : To Give Flexibility Of Harami Pattern Detection In Markets That Have Micro Gaps, Defval = 0
RejectionWickSize (float) : To Filter Out long (Upper And Lower) Wick From The Bearish Harami Pattern, Defval = na
EngulfWick (bool) : To Specify If We Want The Pattern To Also Engulf Its Upper & Lower Previous Wicks, Defval = false
NearSwings (bool) : To Specify If We Want The Pattern To Be Near A Recent Swing High, Defval = true
SwingLookBack (int) : To Specify How Many Bars Back To Detect A Recent Swing High, Defval = 10
Returns: Bool - True If The Current Bar Matches The Requirements of a Bearish Harami Candle
//====================================================================================================================================================
// Custom Time Functions
//====================================================================================================================================================
BarInSession(sess, useFilter)
Determines if the current price bar falls inside the specified session © ZenAndTheArtOfTrading
Parameters:
sess (simple string)
useFilter (bool)
Returns: A boolean - true if the current bar falls within the given time session
BarOutSession(sess, useFilter)
Determines if the current price bar falls outside the specified session © ZenAndTheArtOfTrading
Parameters:
sess (simple string)
useFilter (bool)
Returns: A boolean - true if the current bar falls outside the given time session
DateFilter(startTime, endTime)
Determines if this bar's time falls within date filter range © ZenAndTheArtOfTrading
Parameters:
startTime (int)
endTime (int)
Returns: A boolean - true if the current bar falls within the given dates
DayFilter(monday, tuesday, wednesday, thursday, friday, saturday, sunday)
Checks if the current bar's day is in the list of given days to analyze © ZenAndTheArtOfTrading
Parameters:
monday (bool)
tuesday (bool)
wednesday (bool)
thursday (bool)
friday (bool)
saturday (bool)
sunday (bool)
Returns: A boolean - true if the current bar's day is one of the given days
AUSSess()
Checks If The Current Australian Forex Session In Running
Returns: Bool - True If Currently The Australian Session Is Running
ASIASess()
Checks If The Current Asian Forex Session In Running
Returns: Bool - True If Currently The Asian Session Is Running
EURSess()
Checks If The Current European Forex Session In Running
Returns: Bool - True If Currently The European Session Is Running
USSess()
Checks If The Current US Forex Session In Running
Returns: Bool - True If Currently The US Session Is Running
UNIXToDate(Time, ConversionType, TimeZone)
Converts UNIX Time To Datetime
Parameters:
Time (int) : Is The UNIX Time Input
ConversionType (int) : Is The Datetime Output Format, Defval = DD-MM-YYYY
TimeZone (string) : Is To Convert The Outputed Datetime Into The Specified Time Zone, Defval = Exchange Time Zone
Returns: String - String Of Datetime
GKD-C Adaptive-Lookback Variety RSI [Loxx]Giga Kaleidoscope GKD-C Adaptive-Lookback Variety RSI is a Confirmation module included in Loxx's "Giga Kaleidoscope Modularized Trading System".
█ GKD-C Adaptive-Lookback Variety RSI
What is the Adaptive Lookback Period?
The adaptive lookback period is a technique used in technical analysis to adjust the period of an indicator based on changes in market conditions. This technique is particularly useful in volatile or rapidly changing markets where a fixed period may not be optimal for detecting trends or signals.
The concept of the adaptive lookback period is relatively simple. By adjusting the lookback period based on changes in market conditions, traders can more accurately identify trends and signals. This can help traders to enter and exit trades at the right time and improve the profitability of their trading strategies.
The adaptive lookback period works by identifying potential swing points in the market. Once these points are identified, the lookback period is calculated based on the number of swings and a speed parameter. The swing count parameter determines the number of swings that must occur before the lookback period is adjusted. The speed parameter controls the rate at which the lookback period is adjusted, with higher values indicating a more rapid adjustment.
The adaptive lookback period can be applied to a wide range of technical indicators, including moving averages, oscillators, and trendlines. By adjusting the period of these indicators based on changes in market conditions, traders can reduce the impact of noise and false signals, leading to more profitable trades.
In summary, the adaptive lookback period is a powerful technique for traders and analysts looking to optimize their technical indicators. By adjusting the period based on changes in market conditions, traders can more accurately identify trends and signals, leading to more profitable trades. While there are various ways to implement the adaptive lookback period, the basic concept remains the same, and traders can adapt and customize the technique to suit their individual needs and trading styles.
This indicator includes 10 types of RSI
1. Regular RSI
2. Slow RSI
3. Ehlers Smoothed RSI
4. Cutler's RSI
5. Rapid RSI
6. Harris' RSI
7. RSI DEMA
8. RSI TEMA
9. RSI T3
10. Jurik RSX
Regular RSI
The Relative Strength Index (RSI) is a widely used technical indicator in the field of financial market analysis. Developed by J. Welles Wilder Jr. in 1978, the RSI is a momentum oscillator that measures the speed and change of price movements. It helps traders identify potential trend reversals, overbought, and oversold conditions in a market.
The RSI is calculated based on the average gains and losses of an asset over a specified period, typically 14 days. The formula for calculating the RSI is as follows:
RSI = 100 - (100 / (1 + RS))
Where:
RS (Relative Strength) = Average gain over the specified period / Average loss over the specified period
The RSI ranges from 0 to 100, with values above 70 generally considered overbought (potentially indicating that the asset is overvalued and may experience a price decline) and values below 30 considered oversold (potentially indicating that the asset is undervalued and may experience a price increase).
Slow RSI
Slow RSI is a modified version of the Relative Strength Index (RSI) indicator that aims to provide a smoother, more consistent signal than the traditional RSI. The Slow RSI is designed to be less sensitive to sudden price movements, which can cause false signals.
To calculate Slow RSI, we first calculate the up and down values, just like in traditional RSI and Ehlers RSI. The up and down values are calculated by comparing the current price to the previous price, and then adding up the positive and negative differences.
Next, we calculate the Slow RSI value using the formula:
SlowRSI = 100 * up / (up + dn)
where "up" and "dn" are the total positive and negative differences, respectively.
This formula is similar to the one used in traditional RSI, but the dynamic lookback period based on the average of the up and down values is used to smooth out the signal.
Finally, we apply smoothing to the Slow RSI value by taking an exponential moving average (EMA) of the Slow RSI values over a specified period. This EMA helps to reduce the impact of sudden price movements and provide a smoother, more consistent signal over time.
Ehler's Smoothed RSI
Ehlers RSI is a modified version of the Relative Strength Index (RSI) indicator created by John Ehlers, a well-known technical analyst and author. The purpose of Ehlers RSI is to reduce lag and improve the responsiveness of the traditional RSI indicator.
To calculate Ehlers RSI, we first smooth the prices by taking a weighted average of the current price and the two previous prices. This smoothing helps to reduce noise in the data and produce a more accurate signal.
Next, we calculate the up and down values differently than in traditional RSI. In traditional RSI, the up and down values are based on the difference between the current price and the previous price. In Ehlers RSI, the up and down values are based on the difference between the current price and the price two bars ago. This approach helps to reduce lag and produce a more responsive indicator.
Finally, we calculate Ehlers RSI using the formula:
EhlersRSI = 50 * (up - down) / (up + down) + 50
The result is a more timely signal that can help traders identify potential trends and reversals in the market. However, as with any technical indicator, Ehlers RSI should be used in conjunction with other analysis tools and should not be relied on as the sole basis for trading decisions.
Cutler's RSI
Cutler's RSI (Relative Strength Index) is a variation of the traditional RSI, a popular technical analysis indicator used to measure the speed and change of price movements. The main difference between Cutler's RSI and the traditional RSI is the calculation method used to smooth the data. While the traditional RSI uses an exponential moving average (EMA) to smooth the data, Cutler's RSI uses a simple moving average (SMA).
Here's the formula for Cutler's RSI:
1. Calculate the price change: Price Change = Current Price - Previous Price
2. Calculate the average gain and average loss over a specified period (usually 14 days):
If Price Change > 0, add it to the total gains.
If Price Change < 0, add the absolute value to the total losses.
3. Calculate the average gain and average loss by dividing the totals by the specified period: Average Gain = Total Gains / Period, Average Loss = Total Losses / Period
4. Calculate the Relative Strength (RS): RS = Average Gain / Average Loss
5. Calculate Cutler's RSI: Cutler's RSI = 100 - (100 / (1 + RS))
Cutler's RSI is not necessarily better than the regular RSI; it's just a different variation of the traditional RSI that uses a simple moving average (SMA) instead of an exponential moving average (EMA) quantifiedstrategies.com. The main advantage of Cutler's RSI is that it is not data length dependent, meaning it returns consistent results regardless of the length of the period, or the starting point within a data file quantifiedstrategies.com.
However, it's worth noting that Cutler's RSI does not necessarily outperform the traditional RSI. In fact, backtests reveal that Cutler's RSI is no improvement compared to Wilder's RSI quantifiedstrategies.com. Additionally, using an SMA instead of an EMA in Cutler's RSI may result in the loss of the "believed" advantage of weighting the most recent price action aaii.com.
Both Cutler's RSI and the traditional RSI can be used to identify overbought/oversold levels, support and resistance, spot divergences for possible reversals, and confirm the signals from other indicators investopedia.com. Ultimately, the choice between Cutler's RSI and the traditional RSI depends on personal preference and the specific trading strategy being employed.
Rapid RSI
Rapid RSI is a technical analysis indicator that is a modified version of the Relative Strength Index (RSI). It was developed by Andrew Cardwell and was first introduced in the October 2006 issue of Technical Analysis of Stocks & Commodities magazine.
The Rapid RSI improves upon the regular RSI by modifying the way the average gains and losses are calculated. Here's a general breakdown of the Rapid RSI calculation:
1. Calculate the upward change (when the price has increased) and the downward change (when the price has decreased) for each period.
2. Calculate the simple moving average (SMA) of the upward changes and the SMA of the downward changes over the specified period.
3. Divide the SMA of the upward changes by the SMA of the downward changes to get the relative strength (RS).
4. Calculate the Rapid RSI by transforming the relative strength (RS) into a value ranging from 0 to 100.
By using the simple moving average (SMA) instead of the slow exponential moving average (RMA) as in the regular RSI, the Rapid RSI tends to be more responsive to recent price changes. This can help traders identify overbought and oversold conditions more quickly, potentially leading to earlier entry and exit points. However, it is important to note that a faster indicator may also produce more false signals.
Harris' RSI
Harris RSI (Relative Strength Index) is a technical indicator used in financial analysis to measure the strength or weakness of a security over time. It was developed by Larry Harris in 1986 as an alternative to the traditional RSI, which measures the price change of a security over a given period.
The Harris RSI uses a slightly different formula from the traditional RSI, but it is based on the same principles. It calculates the ratio of the average gain to the average loss over a specified period, typically 14 days. The result is then plotted on a scale of 0 to 100, with high values indicating overbought conditions and low values indicating oversold conditions.
The Harris RSI is believed to be more responsive to short-term price movements than the traditional RSI, making it useful for traders who are looking for quick trading opportunities. However, like any technical indicator, it should be used in conjunction with other forms of analysis to make informed trading decisions.
The calculation of the Harris RSI involves several steps:
1. Calculate the price change over the specified period (usually 14 days) using the following formula:
Price Change = Close Price - Prior Close Price
2. Calculate the average gain and average loss over the same period, using separate formulas for each:
Average Gain = (Sum of Gains over the Period) / Period
Average Loss = (Sum of Losses over the Period) / Period
Gains are calculated as the sum of all positive price changes over the period, while losses are calculated as the sum of all negative price changes over the period.
3. Calculate the Relative Strength (RS) as the ratio of the Average Gain to the Average Loss:
RS = Average Gain / Average Loss
4. Calculate the Harris RSI using the following formula:
Harris RSI = 100 - (100 / (1 + RS))
The resulting Harris RSI value is a number between 0 and 100, which is plotted on a chart to identify overbought or oversold conditions in the security. A value above 70 is generally considered overbought, while a value below 30 is generally considered oversold.
DEMA RSI
DEMA RSI is a variation of the Relative Strength Index (RSI) technical indicator that incorporates the Double Exponential Moving Average (DEMA) for smoothing. Like the regular RSI, the DEMA RSI is a momentum oscillator used to measure the speed and change of price movements, and it ranges from 0 to 100. Readings below 30 typically indicate oversold conditions, while readings above 70 indicate overbought conditions.
The DEMA RSI aims to improve upon the regular RSI by addressing its limitations, such as lag and false signals. By using the DEMA, a more responsive and faster RSI can be achieved. Here's a general breakdown of the DEMA RSI calculation:
1. Calculate the price change for each period, as well as the absolute value of the change.
2. Apply the DEMA smoothing technique to both the price change and its absolute value, separately. This involves calculating two sets of exponential moving averages and combining them to create a double-weighted moving average with reduced lag.
3. Divide the smoothed price change by the smoothed absolute value of the price change.
4. Transform the result into a value ranging from 0 to 100 to obtain the DEMA RSI.
The DEMA RSI is considered an improvement over the regular RSI because it provides faster and more responsive signals. This can help traders identify overbought and oversold conditions more accurately and potentially avoid false signals.
In summary, the main advantages of these RSI variations over the regular RSI are their ability to reduce noise, provide smoother lines, and be more responsive to price changes. This can lead to more accurate signals and fewer false positives in different market conditions.
TEMA RSI
TEMA RSI is a variation of the Relative Strength Index (RSI) technical indicator that incorporates the Triple Exponential Moving Average (TEMA) for smoothing. Like the regular RSI, the TEMA RSI is a momentum oscillator used to measure the speed and change of price movements, and it ranges from 0 to 100. Readings below 30 typically indicate oversold conditions, while readings above 70 indicate overbought conditions.
The TEMA RSI aims to improve upon the regular RSI by addressing its limitations, such as lag and false signals. By using the TEMA, a more responsive and faster RSI can be achieved. Here's a general breakdown of the TEMA RSI calculation:
1. Calculate the price change for each period, as well as the absolute value of the change.
2. Apply the TEMA smoothing technique to both the price change and its absolute value, separately. This involves calculating two sets of exponential moving averages and combining them to create a double-weighted moving average with reduced lag.
3. Divide the smoothed price change by the smoothed absolute value of the price change.
4. Transform the result into a value ranging from 0 to 100 to obtain the TEMA RSI.
The TEMA RSI is considered an improvement over the regular RSI because it provides faster and more responsive signals. This can help traders identify overbought and oversold conditions more accurately and potentially avoid false signals.
T3 RSI
T3 RSI is a variation of the Relative Strength Index (RSI) technical indicator that incorporates the Tilson T3 for smoothing. Like the regular RSI, the T3 RSI is a momentum oscillator used to measure the speed and change of price movements, and it ranges from 0 to 100. Readings below 30 typically indicate oversold conditions, while readings above 70 indicate overbought conditions.
The T3 RSI aims to improve upon the regular RSI by addressing its limitations, such as lag and false signals. By using the T3, a more responsive and faster RSI can be achieved. Here's a general breakdown of the T3 RSI calculation:
1. Calculate the price change for each period, as well as the absolute value of the change.
2. Apply the T3 smoothing technique to both the price change and its absolute value, separately. This involves calculating two sets of exponential moving averages and combining them to create a double-weighted moving average with reduced lag.
3. Divide the smoothed price change by the smoothed absolute value of the price change.
4. Transform the result into a value ranging from 0 to 100 to obtain the T3 RSI.
The T3 RSI is considered an improvement over the regular RSI because it provides faster and more responsive signals. This can help traders identify overbought and oversold conditions more accurately and potentially avoid false signals.
Jurik RSX
The Jurik RSX is a technical indicator developed by Mark Jurik to measure the momentum and strength of price movements in financial markets, such as stocks, commodities, and currencies. It is an advanced version of the traditional Relative Strength Index (RSI), designed to offer smoother and less lagging signals compared to the standard RSI.
The main advantage of the Jurik RSX is that it provides more accurate and timely signals for traders and analysts, thanks to its improved calculation methods that reduce noise and lag in the indicator's output. This enables better decision-making when analyzing market trends and potential trading opportunities.
What is Adaptive-Lookback Variety RSI
This indicator allows the user to select from 9 different RSI types and 33 source types. The various RSI types is enhanced by injecting an adaptive lookback period into the caculation making the RSI able to adaptive to differing market conditions.
Additional Features
This indicator allows you to select from 33 source types. They are as follows:
Close
Open
High
Low
Median
Typical
Weighted
Average
Average Median Body
Trend Biased
Trend Biased (Extreme)
HA Close
HA Open
HA High
HA Low
HA Median
HA Typical
HA Weighted
HA Average
HA Average Median Body
HA Trend Biased
HA Trend Biased (Extreme)
HAB Close
HAB Open
HAB High
HAB Low
HAB Median
HAB Typical
HAB Weighted
HAB Average
HAB Average Median Body
HAB Trend Biased
HAB Trend Biased (Extreme)
What are Heiken Ashi "better" candles?
Heiken Ashi "better" candles are a modified version of the standard Heiken Ashi candles, which are a popular charting technique used in technical analysis. Heiken Ashi candles help traders identify trends and potential reversal points by smoothing out price data and reducing market noise. The "better formula" was proposed by Sebastian Schmidt in an article published by BNP Paribas in Warrants & Zertifikate, a German magazine, in August 2004. The aim of this formula is to further improve the smoothing of the Heiken Ashi chart and enhance its effectiveness in identifying trends and reversals.
Standard Heiken Ashi candles are calculated using the following formulas:
Heiken Ashi Close = (Open + High + Low + Close) / 4
Heiken Ashi Open = (Previous Heiken Ashi Open + Previous Heiken Ashi Close) / 2
Heiken Ashi High = Max (High, Heiken Ashi Open, Heiken Ashi Close)
Heiken Ashi Low = Min (Low, Heiken Ashi Open, Heiken Ashi Close)
The "better formula" modifies the standard Heiken Ashi calculation by incorporating additional smoothing, which can help reduce noise and make it easier to identify trends and reversals. The modified formulas for Heiken Ashi "better" candles are as follows:
Better Heiken Ashi Close = (Open + High + Low + Close) / 4
Better Heiken Ashi Open = (Previous Better Heiken Ashi Open + Previous Better Heiken Ashi Close) / 2
Better Heiken Ashi High = Max (High, Better Heiken Ashi Open, Better Heiken Ashi Close)
Better Heiken Ashi Low = Min (Low, Better Heiken Ashi Open, Better Heiken Ashi Close)
Smoothing Factor = 2 / (N + 1), where N is the chosen period for smoothing
Smoothed Better Heiken Ashi Open = (Better Heiken Ashi Open * Smoothing Factor) + (Previous Smoothed Better Heiken Ashi Open * (1 - Smoothing Factor))
Smoothed Better Heiken Ashi Close = (Better Heiken Ashi Close * Smoothing Factor) + (Previous Smoothed Better Heiken Ashi Close * (1 - Smoothing Factor))
The smoothed Better Heiken Ashi Open and Close values are then used to calculate the smoothed Better Heiken Ashi High and Low values, resulting in "better" candles that provide a clearer representation of the market trend and potential reversal points.
It's important to note that, like any other technical analysis tool, Heiken Ashi "better" candles are not foolproof and should be used in conjunction with other indicators and analysis techniques to make well-informed trading decisions.
Heiken Ashi "better" candles, as mentioned previously, provide a clearer representation of market trends and potential reversal points by reducing noise and smoothing out price data. When using these candles in conjunction with other technical analysis tools and indicators, traders can gain valuable insights into market behavior and make more informed decisions.
To effectively use Heiken Ashi "better" candles in your trading strategy, consider the following tips:
Trend Identification: Heiken Ashi "better" candles can help you identify the prevailing trend in the market. When the majority of the candles are green (or another color, depending on your chart settings) and there are no or few lower wicks, it may indicate a strong uptrend. Conversely, when the majority of the candles are red (or another color) and there are no or few upper wicks, it may signal a strong downtrend.
Trend Reversals: Look for potential trend reversals when a change in the color of the candles occurs, especially when accompanied by longer wicks. For example, if a green candle with a long lower wick is followed by a red candle, it could indicate a bearish reversal. Similarly, a red candle with a long upper wick followed by a green candle may suggest a bullish reversal.
Support and Resistance: You can use Heiken Ashi "better" candles to identify potential support and resistance levels. When the candles are consistently moving in one direction and then suddenly change color with longer wicks, it could indicate the presence of a support or resistance level.
Stop-Loss and Take-Profit: Using Heiken Ashi "better" candles can help you manage risk by determining optimal stop-loss and take-profit levels. For instance, you can place your stop-loss below the low of the most recent green candle in an uptrend or above the high of the most recent red candle in a downtrend.
Confirming Signals: Heiken Ashi "better" candles should be used in conjunction with other technical indicators, such as moving averages, oscillators, or chart patterns, to confirm signals and improve the accuracy of your analysis.
In this implementation, you have the choice of AMA, KAMA, or T3 smoothing. These are as follows:
Kaufman Adaptive Moving Average (KAMA)
The Kaufman Adaptive Moving Average (KAMA) is a type of adaptive moving average used in technical analysis to smooth out price fluctuations and identify trends. The KAMA adjusts its smoothing factor based on the market's volatility, making it more responsive in volatile markets and smoother in calm markets. The KAMA is calculated using three different efficiency ratios that determine the appropriate smoothing factor for the current market conditions. These ratios are based on the noise level of the market, the speed at which the market is moving, and the length of the moving average. The KAMA is a popular choice among traders who prefer to use adaptive indicators to identify trends and potential reversals.
Adaptive Moving Average
The Adaptive Moving Average (AMA) is a type of moving average that adjusts its sensitivity to price movements based on market conditions. It uses a ratio between the current price and the highest and lowest prices over a certain lookback period to determine its level of smoothing. The AMA can help reduce lag and increase responsiveness to changes in trend direction, making it useful for traders who want to follow trends while avoiding false signals. The AMA is calculated by multiplying a smoothing constant with the difference between the current price and the previous AMA value, then adding the result to the previous AMA value.
T3
The T3 moving average is a type of technical indicator used in financial analysis to identify trends in price movements. It is similar to the Exponential Moving Average (EMA) and the Double Exponential Moving Average (DEMA), but uses a different smoothing algorithm.
The T3 moving average is calculated using a series of exponential moving averages that are designed to filter out noise and smooth the data. The resulting smoothed data is then weighted with a non-linear function to produce a final output that is more responsive to changes in trend direction.
The T3 moving average can be customized by adjusting the length of the moving average, as well as the weighting function used to smooth the data. It is commonly used in conjunction with other technical indicators as part of a larger trading strategy.
█ Giga Kaleidoscope Modularized Trading System
Core components of an NNFX algorithmic trading strategy
The NNFX algorithm is built on the principles of trend, momentum, and volatility. There are six core components in the NNFX trading algorithm:
1. Volatility - price volatility; e.g., Average True Range, True Range Double, Close-to-Close, etc.
2. Baseline - a moving average to identify price trend
3. Confirmation 1 - a technical indicator used to identify trends
4. Confirmation 2 - a technical indicator used to identify trends
5. Continuation - a technical indicator used to identify trends
6. Volatility/Volume - a technical indicator used to identify volatility/volume breakouts/breakdown
7. Exit - a technical indicator used to determine when a trend is exhausted
What is Volatility in the NNFX trading system?
In the NNFX (No Nonsense Forex) trading system, ATR (Average True Range) is typically used to measure the volatility of an asset. It is used as a part of the system to help determine the appropriate stop loss and take profit levels for a trade. ATR is calculated by taking the average of the true range values over a specified period.
True range is calculated as the maximum of the following values:
-Current high minus the current low
-Absolute value of the current high minus the previous close
-Absolute value of the current low minus the previous close
ATR is a dynamic indicator that changes with changes in volatility. As volatility increases, the value of ATR increases, and as volatility decreases, the value of ATR decreases. By using ATR in NNFX system, traders can adjust their stop loss and take profit levels according to the volatility of the asset being traded. This helps to ensure that the trade is given enough room to move, while also minimizing potential losses.
Other types of volatility include True Range Double (TRD), Close-to-Close, and Garman-Klass
What is a Baseline indicator?
The baseline is essentially a moving average, and is used to determine the overall direction of the market.
The baseline in the NNFX system is used to filter out trades that are not in line with the long-term trend of the market. The baseline is plotted on the chart along with other indicators, such as the Moving Average (MA), the Relative Strength Index (RSI), and the Average True Range (ATR).
Trades are only taken when the price is in the same direction as the baseline. For example, if the baseline is sloping upwards, only long trades are taken, and if the baseline is sloping downwards, only short trades are taken. This approach helps to ensure that trades are in line with the overall trend of the market, and reduces the risk of entering trades that are likely to fail.
By using a baseline in the NNFX system, traders can have a clear reference point for determining the overall trend of the market, and can make more informed trading decisions. The baseline helps to filter out noise and false signals, and ensures that trades are taken in the direction of the long-term trend.
What is a Confirmation indicator?
Confirmation indicators are technical indicators that are used to confirm the signals generated by primary indicators. Primary indicators are the core indicators used in the NNFX system, such as the Average True Range (ATR), the Moving Average (MA), and the Relative Strength Index (RSI).
The purpose of the confirmation indicators is to reduce false signals and improve the accuracy of the trading system. They are designed to confirm the signals generated by the primary indicators by providing additional information about the strength and direction of the trend.
Some examples of confirmation indicators that may be used in the NNFX system include the Bollinger Bands, the MACD (Moving Average Convergence Divergence), and the MACD Oscillator. These indicators can provide information about the volatility, momentum, and trend strength of the market, and can be used to confirm the signals generated by the primary indicators.
In the NNFX system, confirmation indicators are used in combination with primary indicators and other filters to create a trading system that is robust and reliable. By using multiple indicators to confirm trading signals, the system aims to reduce the risk of false signals and improve the overall profitability of the trades.
What is a Continuation indicator?
In the NNFX (No Nonsense Forex) trading system, a continuation indicator is a technical indicator that is used to confirm a current trend and predict that the trend is likely to continue in the same direction. A continuation indicator is typically used in conjunction with other indicators in the system, such as a baseline indicator, to provide a comprehensive trading strategy.
What is a Volatility/Volume indicator?
Volume indicators, such as the On Balance Volume (OBV), the Chaikin Money Flow (CMF), or the Volume Price Trend (VPT), are used to measure the amount of buying and selling activity in a market. They are based on the trading volume of the market, and can provide information about the strength of the trend. In the NNFX system, volume indicators are used to confirm trading signals generated by the Moving Average and the Relative Strength Index. Volatility indicators include Average Direction Index, Waddah Attar, and Volatility Ratio. In the NNFX trading system, volatility is a proxy for volume and vice versa.
By using volume indicators as confirmation tools, the NNFX trading system aims to reduce the risk of false signals and improve the overall profitability of trades. These indicators can provide additional information about the market that is not captured by the primary indicators, and can help traders to make more informed trading decisions. In addition, volume indicators can be used to identify potential changes in market trends and to confirm the strength of price movements.
What is an Exit indicator?
The exit indicator is used in conjunction with other indicators in the system, such as the Moving Average (MA), the Relative Strength Index (RSI), and the Average True Range (ATR), to provide a comprehensive trading strategy.
The exit indicator in the NNFX system can be any technical indicator that is deemed effective at identifying optimal exit points. Examples of exit indicators that are commonly used include the Parabolic SAR, the Average Directional Index (ADX), and the Chandelier Exit.
The purpose of the exit indicator is to identify when a trend is likely to reverse or when the market conditions have changed, signaling the need to exit a trade. By using an exit indicator, traders can manage their risk and prevent significant losses.
In the NNFX system, the exit indicator is used in conjunction with a stop loss and a take profit order to maximize profits and minimize losses. The stop loss order is used to limit the amount of loss that can be incurred if the trade goes against the trader, while the take profit order is used to lock in profits when the trade is moving in the trader's favor.
Overall, the use of an exit indicator in the NNFX trading system is an important component of a comprehensive trading strategy. It allows traders to manage their risk effectively and improve the profitability of their trades by exiting at the right time.
How does Loxx's GKD (Giga Kaleidoscope Modularized Trading System) implement the NNFX algorithm outlined above?
Loxx's GKD v1.0 system has five types of modules (indicators/strategies). These modules are:
1. GKD-BT - Backtesting module (Volatility, Number 1 in the NNFX algorithm)
2. GKD-B - Baseline module (Baseline and Volatility/Volume, Numbers 1 and 2 in the NNFX algorithm)
3. GKD-C - Confirmation 1/2 and Continuation module (Confirmation 1/2 and Continuation, Numbers 3, 4, and 5 in the NNFX algorithm)
4. GKD-V - Volatility/Volume module (Confirmation 1/2, Number 6 in the NNFX algorithm)
5. GKD-E - Exit module (Exit, Number 7 in the NNFX algorithm)
(additional module types will added in future releases)
Each module interacts with every module by passing data between modules. Data is passed between each module as described below:
GKD-B => GKD-V => GKD-C(1) => GKD-C(2) => GKD-C(Continuation) => GKD-E => GKD-BT
That is, the Baseline indicator passes its data to Volatility/Volume. The Volatility/Volume indicator passes its values to the Confirmation 1 indicator. The Confirmation 1 indicator passes its values to the Confirmation 2 indicator. The Confirmation 2 indicator passes its values to the Continuation indicator. The Continuation indicator passes its values to the Exit indicator, and finally, the Exit indicator passes its values to the Backtest strategy.
This chaining of indicators requires that each module conform to Loxx's GKD protocol, therefore allowing for the testing of every possible combination of technical indicators that make up the six components of the NNFX algorithm.
What does the application of the GKD trading system look like?
Example trading system:
Backtest: Strategy with 1-3 take profits, trailing stop loss, multiple types of PnL volatility, and 2 backtesting styles
Baseline: Hull Moving Average
Volatility/Volume: Hurst Exponent
Confirmation 1: Adaptive-Lookback Variety RSI as shown on the chart above
Confirmation 2: Williams Percent Range
Continuation: Adaptive-Lookback Variety RSI
Exit: Rex Oscillator
Each GKD indicator is denoted with a module identifier of either: GKD-BT, GKD-B, GKD-C, GKD-V, or GKD-E. This allows traders to understand to which module each indicator belongs and where each indicator fits into the GKD protocol chain.
Giga Kaleidoscope Modularized Trading System Signals (based on the NNFX algorithm)
Standard Entry
1. GKD-C Confirmation 1 Signal
2. GKD-B Baseline agrees
3. Price is within a range of 0.2x Volatility and 1.0x Volatility of the Goldie Locks Mean
4. GKD-C Confirmation 2 agrees
5. GKD-V Volatility/Volume agrees
Baseline Entry
1. GKD-B Baseline signal
2. GKD-C Confirmation 1 agrees
3. Price is within a range of 0.2x Volatility and 1.0x Volatility of the Goldie Locks Mean
4. GKD-C Confirmation 2 agrees
5. GKD-V Volatility/Volume agrees
6. GKD-C Confirmation 1 signal was less than 7 candles prior
Volatility/Volume Entry
1. GKD-V Volatility/Volume signal
2. GKD-C Confirmation 1 agrees
3. Price is within a range of 0.2x Volatility and 1.0x Volatility of the Goldie Locks Mean
4. GKD-C Confirmation 2 agrees
5. GKD-B Baseline agrees
6. GKD-C Confirmation 1 signal was less than 7 candles prior
Continuation Entry
1. Standard Entry, Baseline Entry, or Pullback; entry triggered previously
2. GKD-B Baseline hasn't crossed since entry signal trigger
3. GKD-C Confirmation Continuation Indicator signals
4. GKD-C Confirmation 1 agrees
5. GKD-B Baseline agrees
6. GKD-C Confirmation 2 agrees
1-Candle Rule Standard Entry
1. GKD-C Confirmation 1 signal
2. GKD-B Baseline agrees
3. Price is within a range of 0.2x Volatility and 1.0x Volatility of the Goldie Locks Mean
Next Candle:
1. Price retraced (Long: close < close or Short: close > close )
2. GKD-B Baseline agrees
3. GKD-C Confirmation 1 agrees
4. GKD-C Confirmation 2 agrees
5. GKD-V Volatility/Volume agrees
1-Candle Rule Baseline Entry
1. GKD-B Baseline signal
2. GKD-C Confirmation 1 agrees
3. Price is within a range of 0.2x Volatility and 1.0x Volatility of the Goldie Locks Mean
4. GKD-C Confirmation 1 signal was less than 7 candles prior
Next Candle:
1. Price retraced (Long: close < close or Short: close > close )
2. GKD-B Baseline agrees
3. GKD-C Confirmation 1 agrees
4. GKD-C Confirmation 2 agrees
5. GKD-V Volatility/Volume Agrees
1-Candle Rule Volatility/Volume Entry
1. GKD-V Volatility/Volume signal
2. GKD-C Confirmation 1 agrees
3. Price is within a range of 0.2x Volatility and 1.0x Volatility of the Goldie Locks Mean
4. GKD-C Confirmation 1 signal was less than 7 candles prior
Next Candle:
1. Price retraced (Long: close < close or Short: close > close)
2. GKD-B Volatility/Volume agrees
3. GKD-C Confirmation 1 agrees
4. GKD-C Confirmation 2 agrees
5. GKD-B Baseline agrees
PullBack Entry
1. GKD-B Baseline signal
2. GKD-C Confirmation 1 agrees
3. Price is beyond 1.0x Volatility of Baseline
Next Candle:
1. Price is within a range of 0.2x Volatility and 1.0x Volatility of the Goldie Locks Mean
2. GKD-C Confirmation 1 agrees
3. GKD-C Confirmation 2 agrees
4. GKD-V Volatility/Volume Agrees
]█ Setting up the GKD
The GKD system involves chaining indicators together. These are the steps to set this up.
Use a GKD-C indicator alone on a chart
1. Inside the GKD-C indicator, change the "Confirmation Type" setting to "Solo Confirmation Simple"
Use a GKD-V indicator alone on a chart
**nothing, it's already useable on the chart without any settings changes
Use a GKD-B indicator alone on a chart
**nothing, it's already useable on the chart without any settings changes
Baseline (Baseline, Backtest)
1. Import the GKD-B Baseline into the GKD-BT Backtest: "Input into Volatility/Volume or Backtest (Baseline testing)"
2. Inside the GKD-BT Backtest, change the setting "Backtest Special" to "Baseline"
Volatility/Volume (Volatility/Volume, Backte st)
1. Inside the GKD-V indicator, change the "Testing Type" setting to "Solo"
2. Inside the GKD-V indicator, change the "Signal Type" setting to "Crossing" (neither traditional nor both can be backtested)
3. Import the GKD-V indicator into the GKD-BT Backtest: "Input into C1 or Backtest"
4. Inside the GKD-BT Backtest, change the setting "Backtest Special" to "Volatility/Volume"
5. Inside the GKD-BT Backtest, a) change the setting "Backtest Type" to "Trading" if using a directional GKD-V indicator; or, b) change the setting "Backtest Type" to "Full" if using a directional or non-directional GKD-V indicator (non-directional GKD-V can only test Longs and Shorts separately)
6. If "Backtest Type" is set to "Full": Inside the GKD-BT Backtest, change the setting "Backtest Side" to "Long" or "Short
7. If "Backtest Type" is set to "Full": To allow the system to open multiple orders at one time so you test all Longs or Shorts, open the GKD-BT Backtest, click the tab "Properties" and then insert a value of something like 10 orders into the "Pyramiding" settings. This will allow 10 orders to be opened at one time which should be enough to catch all possible Longs or Shorts.
Solo Confirmation Simple (Confirmation, Backtest)
1. Inside the GKD-C indicator, change the "Confirmation Type" setting to "Solo Confirmation Simple"
1. Import the GKD-C indicator into the GKD-BT Backtest: "Input into Backtest"
2. Inside the GKD-BT Backtest, change the setting "Backtest Special" to "Solo Confirmation Simple"
Solo Confirmation Complex without Exits (Baseline, Volatility/Volume, Confirmation, Backtest)
1. Inside the GKD-V indicator, change the "Testing Type" setting to "Chained"
2. Import the GKD-B Baseline into the GKD-V indicator: "Input into Volatility/Volume or Backtest (Baseline testing)"
3. Inside the GKD-C indicator, change the "Confirmation Type" setting to "Solo Confirmation Complex"
4. Import the GKD-V indicator into the GKD-C indicator: "Input into C1 or Backtest"
5. Inside the GKD-BT Backtest, change the setting "Backtest Special" to "GKD Full wo/ Exits"
6. Import the GKD-C into the GKD-BT Backtest: "Input into Exit or Backtest"
Solo Confirmation Complex with Exits (Baseline, Volatility/Volume, Confirmation, Exit, Backtest)
1. Inside the GKD-V indicator, change the "Testing Type" setting to "Chained"
2. Import the GKD-B Baseline into the GKD-V indicator: "Input into Volatility/Volume or Backtest (Baseline testing)"
3. Inside the GKD-C indicator, change the "Confirmation Type" setting to "Solo Confirmation Complex"
4. Import the GKD-V indicator into the GKD-C indicator: "Input into C1 or Backtest"
5. Import the GKD-C indicator into the GKD-E indicator: "Input into Exit"
6. Inside the GKD-BT Backtest, change the setting "Backtest Special" to "GKD Full w/ Exits"
7. Import the GKD-E into the GKD-BT Backtest: "Input into Backtest"
Full GKD without Exits (Baseline, Volatility/Volume, Confirmation 1, Confirmation 2, Continuation, Backtest)
1. Inside the GKD-V indicator, change the "Testing Type" setting to "Chained"
2. Import the GKD-B Baseline into the GKD-V indicator: "Input into Volatility/Volume or Backtest (Baseline testing)"
3. Inside the GKD-C 1 indicator, change the "Confirmation Type" setting to "Confirmation 1"
4. Import the GKD-V indicator into the GKD-C 1 indicator: "Input into C1 or Backtest"
5. Inside the GKD-C 2 indicator, change the "Confirmation Type" setting to "Confirmation 2"
6. Import the GKD-C 1 indicator into the GKD-C 2 indicator: "Input into C2"
7. Inside the GKD-C Continuation indicator, change the "Confirmation Type" setting to "Continuation"
8. Inside the GKD-BT Backtest, change the setting "Backtest Special" to "GKD Full wo/ Exits"
9. Import the GKD-E into the GKD-BT Backtest: "Input into Exit or Backtest"
Full GKD with Exits (Baseline, Volatility/Volume, Confirmation 1, Confirmation 2, Continuation, Exit, Backtest)
1. Inside the GKD-V indicator, change the "Testing Type" setting to "Chained"
2. Import the GKD-B Baseline into the GKD-V indicator: "Input into Volatility/Volume or Backtest (Baseline testing)"
3. Inside the GKD-C 1 indicator, change the "Confirmation Type" setting to "Confirmation 1"
4. Import the GKD-V indicator into the GKD-C 1 indicator: "Input into C1 or Backtest"
5. Inside the GKD-C 2 indicator, change the "Confirmation Type" setting to "Confirmation 2"
6. Import the GKD-C 1 indicator into the GKD-C 2 indicator: "Input into C2"
7. Inside the GKD-C Continuation indicator, change the "Confirmation Type" setting to "Continuation"
8. Import the GKD-C Continuation indicator into the GKD-E indicator: "Input into Exit"
9. Inside the GKD-BT Backtest, change the setting "Backtest Special" to "GKD Full w/ Exits"
10. Import the GKD-E into the GKD-BT Backtest: "Input into Backtest"
Baseline + Volatility/Volume (Baseline, Volatility/Volume, Backtest)
1. Inside the GKD-V indicator, change the "Testing Type" setting to "Baseline + Volatility/Volume"
2. Inside the GKD-V indicator, make sure the "Signal Type" setting is set to "Traditional"
3. Import the GKD-B Baseline into the GKD-V indicator: "Input into Volatility/Volume or Backtest (Baseline testing)"
4. Inside the GKD-BT Backtest, change the setting "Backtest Special" to "Baseline + Volatility/Volume"
5. Import the GKD-V into the GKD-BT Backtest: "Input into C1 or Backtest"
6. Inside the GKD-BT Backtest, change the setting "Backtest Type" to "Full". For this backtest, you must test Longs and Shorts separately
7. To allow the system to open multiple orders at one time so you can test all Longs or Shorts, open the GKD-BT Backtest, click the tab "Properties" and then insert a value of something like 10 orders into the "Pyramiding" settings. This will allow 10 orders to be opened at one time which should be enough to catch all possible Longs or Shorts.
Requirements
Inputs
Confirmation 1: GKD-V Volatility / Volume indicator
Confirmation 2: GKD-C Confirmation indicator
Continuation: GKD-C Confirmation indicator
Solo Confirmation Simple: GKD-B Baseline
Solo Confirmation Complex: GKD-V Volatility / Volume indicator
Solo Confirmation Super Complex: GKD-V Volatility / Volume indicator
Stacked 1: None
Stacked 2+: GKD-C, GKD-V, or GKD-B Stacked 1
Outputs
Confirmation 1: GKD-C Confirmation 2 indicator
Confirmation 2: GKD-C Continuation indicator
Continuation: GKD-E Exit indicator
Solo Confirmation Simple: GKD-BT Backtest
Solo Confirmation Complex: GKD-BT Backtest or GKD-E Exit indicator
Solo Confirmation Super Complex: GKD-C Continuation indicator
Stacked 1: GKD-C, GKD-V, or GKD-B Stacked 2+
Stacked 2+: GKD-C, GKD-V, or GKD-B Stacked 2+ or GKD-BT Backtest
Additional features will be added in future releases.
GKD-C Time Fractal Energy Adaptive Laguerre RSI [Loxx]Giga Kaleidoscope GKD-C Time Fractal Energy Adaptive Laguerre RSI is a Confirmation module included in Loxx's "Giga Kaleidoscope Modularized Trading System".
█ GKD-C Time Fractal Energy Adaptive Laguerre RSI
Cracking the Code of Price Momentum with the Time Fractal Energy Adaptive Laguerre RSI Indicator
The Time Fractal Energy adaptive Laguerre RSI is a technical indicator used in financial trading to provide a measure of the momentum of a security's price. It combines several mathematical concepts and techniques, including the Laguerre polynomial, fractal patterns, and adaptive smoothing factors, to provide a more accurate representation of price momentum.
Before diving into the details of how this indicator works, it's important to understand what momentum is and why it's important in trading. Momentum is a measure of the strength and persistence of a trend in a security's price. It can be calculated in various ways, but the basic idea is to look at the change in price over a certain period and use that to infer whether the trend is likely to continue or reverse.
One common momentum indicator is the Relative Strength Index (RSI), which measures the magnitude of recent price changes. The RSI is calculated by dividing the average gain of the price over a certain period by the average loss over the same period, and then normalizing the result to a scale of 0 to 100. A reading above 70 is generally considered overbought, while a reading below 30 is oversold.
While the RSI is a useful tool, it can be prone to noise and false signals, especially in volatile markets. This is where the Time Fractal Energy adaptive Laguerre RSI comes in. It combines the RSI with several other techniques to provide a smoother, more accurate measure of momentum.
Let's break down the components of the Time Fractal Energy adaptive Laguerre RSI in more detail.
-Time Fractal Energy: "Time Fractal" refers to the idea that the behavior of a system can be characterized by self-similar patterns at different time scales. "Energy" in this context refers to the intensity or strength of the fractal pattern. In the context of the indicator, this means that the momentum of a security's price can be characterized by fractal patterns at different time scales.
-Laguerre polynomial: The Laguerre polynomial is a mathematical function used to smooth out data. In the context of the Time Fractal Energy adaptive Laguerre RSI, it is used to filter out noise and highlight underlying trends in the RSI data.
-Adaptive smoothing factors: The smoothing factor used in the Laguerre polynomial is adjusted based on the volatility of the underlying security. This means that the indicator is more responsive to changes in volatility, which can help it perform better in different market conditions.
Now, let's look at how these components come together in the Time Fractal Energy adaptive Laguerre RSI indicator. The code you provided is written in Pine Script, a programming language used on the trading platform TradingView. Here's a step-by-step explanation of what the code does:
1. The input parameters are defined at the top of the code. These include the length of the Average True Range (ATR) period, the price used for the RSI calculation (in this case, the closing price), the smoothing factor, and the upper and lower levels that define overbought and oversold conditions.
2. The Laguerre Filter function is defined using the Laguerre polynomial. This function is used to smooth out the RSI data and filter out noise.
3. The Laguerre RSI function is defined. This function calculates the RSI value based on the Laguerre Filtered data. This step further removes any noise from the RSI calculation, resulting in a smoother, more accurate measure of momentum.
4. The ATR value is calculated based on the highest and lowest prices of the security over the specified period. ATR measures the volatility of a security and is used to determine the adaptive smoothing factor.
5. The gamma value is calculated based on the ATR and the high and low prices of the security over the specified period. Gamma is used as the adaptive smoothing factor in the Laguerre Filter function. The higher the volatility, the higher the gamma value, resulting in a more responsive filter.
6. The Laguerre Filtered RSI value is smoothed further using the gamma value and the smoothing factor. This step helps to reduce any remaining noise in the momentum signal and provide a more accurate representation of the underlying trend.
7. The signal line is created based on the smoothed Laguerre Filtered RSI value from the previous bar. The signal line acts as a trigger for buying or selling, depending on whether it crosses above or below the upper or lower levels defined in the input parameters.
The Time Fractal Energy adaptive Laguerre RSI indicator aims to provide a more accurate measure of momentum by combining several mathematical techniques. The Laguerre polynomial is used to filter out noise and highlight underlying trends, while the adaptive smoothing factor helps to adjust the filter based on the volatility of the underlying security. The result is a smoother, more accurate measure of momentum that can be used to make more informed trading decisions.
It's important to note that no indicator is perfect, and the Time Fractal Energy adaptive Laguerre RSI is no exception. Like any technical indicator, it should be used in combination with other tools and analysis to make informed trading decisions. Additionally, traders should be aware that the indicator may perform differently in different market conditions and should be used in conjunction with other tools to account for changing market conditions.
In conclusion, the Time Fractal Energy adaptive Laguerre RSI is a technical indicator used in financial trading that aims to provide a more accurate measure of momentum. It combines several mathematical techniques, including the Laguerre polynomial, fractal patterns, and adaptive smoothing factors, to filter out noise and highlight underlying trends. While no indicator is perfect, the Time Fractal Energy adaptive Laguerre RSI can be a useful tool when used in combination with other analysis to make informed trading decisions.
Additional Features
This indicator allows you to select from 33 source types. They are as follows:
Close
Open
High
Low
Median
Typical
Weighted
Average
Average Median Body
Trend Biased
Trend Biased (Extreme)
HA Close
HA Open
HA High
HA Low
HA Median
HA Typical
HA Weighted
HA Average
HA Average Median Body
HA Trend Biased
HA Trend Biased (Extreme)
HAB Close
HAB Open
HAB High
HAB Low
HAB Median
HAB Typical
HAB Weighted
HAB Average
HAB Average Median Body
HAB Trend Biased
HAB Trend Biased (Extreme)
What are Heiken Ashi "better" candles?
Heiken Ashi "better" candles are a modified version of the standard Heiken Ashi candles, which are a popular charting technique used in technical analysis. Heiken Ashi candles help traders identify trends and potential reversal points by smoothing out price data and reducing market noise. The "better formula" was proposed by Sebastian Schmidt in an article published by BNP Paribas in Warrants & Zertifikate, a German magazine, in August 2004. The aim of this formula is to further improve the smoothing of the Heiken Ashi chart and enhance its effectiveness in identifying trends and reversals.
Standard Heiken Ashi candles are calculated using the following formulas:
Heiken Ashi Close = (Open + High + Low + Close) / 4
Heiken Ashi Open = (Previous Heiken Ashi Open + Previous Heiken Ashi Close) / 2
Heiken Ashi High = Max (High, Heiken Ashi Open, Heiken Ashi Close)
Heiken Ashi Low = Min (Low, Heiken Ashi Open, Heiken Ashi Close)
The "better formula" modifies the standard Heiken Ashi calculation by incorporating additional smoothing, which can help reduce noise and make it easier to identify trends and reversals. The modified formulas for Heiken Ashi "better" candles are as follows:
Better Heiken Ashi Close = (Open + High + Low + Close) / 4
Better Heiken Ashi Open = (Previous Better Heiken Ashi Open + Previous Better Heiken Ashi Close) / 2
Better Heiken Ashi High = Max (High, Better Heiken Ashi Open, Better Heiken Ashi Close)
Better Heiken Ashi Low = Min (Low, Better Heiken Ashi Open, Better Heiken Ashi Close)
Smoothing Factor = 2 / (N + 1), where N is the chosen period for smoothing
Smoothed Better Heiken Ashi Open = (Better Heiken Ashi Open * Smoothing Factor) + (Previous Smoothed Better Heiken Ashi Open * (1 - Smoothing Factor))
Smoothed Better Heiken Ashi Close = (Better Heiken Ashi Close * Smoothing Factor) + (Previous Smoothed Better Heiken Ashi Close * (1 - Smoothing Factor))
The smoothed Better Heiken Ashi Open and Close values are then used to calculate the smoothed Better Heiken Ashi High and Low values, resulting in "better" candles that provide a clearer representation of the market trend and potential reversal points.
It's important to note that, like any other technical analysis tool, Heiken Ashi "better" candles are not foolproof and should be used in conjunction with other indicators and analysis techniques to make well-informed trading decisions.
Heiken Ashi "better" candles, as mentioned previously, provide a clearer representation of market trends and potential reversal points by reducing noise and smoothing out price data. When using these candles in conjunction with other technical analysis tools and indicators, traders can gain valuable insights into market behavior and make more informed decisions.
To effectively use Heiken Ashi "better" candles in your trading strategy, consider the following tips:
Trend Identification: Heiken Ashi "better" candles can help you identify the prevailing trend in the market. When the majority of the candles are green (or another color, depending on your chart settings) and there are no or few lower wicks, it may indicate a strong uptrend. Conversely, when the majority of the candles are red (or another color) and there are no or few upper wicks, it may signal a strong downtrend.
Trend Reversals: Look for potential trend reversals when a change in the color of the candles occurs, especially when accompanied by longer wicks. For example, if a green candle with a long lower wick is followed by a red candle, it could indicate a bearish reversal. Similarly, a red candle with a long upper wick followed by a green candle may suggest a bullish reversal.
Support and Resistance: You can use Heiken Ashi "better" candles to identify potential support and resistance levels. When the candles are consistently moving in one direction and then suddenly change color with longer wicks, it could indicate the presence of a support or resistance level.
Stop-Loss and Take-Profit: Using Heiken Ashi "better" candles can help you manage risk by determining optimal stop-loss and take-profit levels. For instance, you can place your stop-loss below the low of the most recent green candle in an uptrend or above the high of the most recent red candle in a downtrend.
Confirming Signals: Heiken Ashi "better" candles should be used in conjunction with other technical indicators, such as moving averages, oscillators, or chart patterns, to confirm signals and improve the accuracy of your analysis.
In this implementation, you have the choice of AMA, KAMA, or T3 smoothing. These are as follows:
Kaufman Adaptive Moving Average (KAMA)
The Kaufman Adaptive Moving Average (KAMA) is a type of adaptive moving average used in technical analysis to smooth out price fluctuations and identify trends. The KAMA adjusts its smoothing factor based on the market's volatility, making it more responsive in volatile markets and smoother in calm markets. The KAMA is calculated using three different efficiency ratios that determine the appropriate smoothing factor for the current market conditions. These ratios are based on the noise level of the market, the speed at which the market is moving, and the length of the moving average. The KAMA is a popular choice among traders who prefer to use adaptive indicators to identify trends and potential reversals.
Adaptive Moving Average
The Adaptive Moving Average (AMA) is a type of moving average that adjusts its sensitivity to price movements based on market conditions. It uses a ratio between the current price and the highest and lowest prices over a certain lookback period to determine its level of smoothing. The AMA can help reduce lag and increase responsiveness to changes in trend direction, making it useful for traders who want to follow trends while avoiding false signals. The AMA is calculated by multiplying a smoothing constant with the difference between the current price and the previous AMA value, then adding the result to the previous AMA value.
T3
The T3 moving average is a type of technical indicator used in financial analysis to identify trends in price movements. It is similar to the Exponential Moving Average (EMA) and the Double Exponential Moving Average (DEMA), but uses a different smoothing algorithm.
The T3 moving average is calculated using a series of exponential moving averages that are designed to filter out noise and smooth the data. The resulting smoothed data is then weighted with a non-linear function to produce a final output that is more responsive to changes in trend direction.
The T3 moving average can be customized by adjusting the length of the moving average, as well as the weighting function used to smooth the data. It is commonly used in conjunction with other technical indicators as part of a larger trading strategy.
█ Giga Kaleidoscope Modularized Trading System
Core components of an NNFX algorithmic trading strategy
The NNFX algorithm is built on the principles of trend, momentum, and volatility. There are six core components in the NNFX trading algorithm:
1. Volatility - price volatility; e.g., Average True Range, True Range Double, Close-to-Close, etc.
2. Baseline - a moving average to identify price trend
3. Confirmation 1 - a technical indicator used to identify trends
4. Confirmation 2 - a technical indicator used to identify trends
5. Continuation - a technical indicator used to identify trends
6. Volatility/Volume - a technical indicator used to identify volatility/volume breakouts/breakdown
7. Exit - a technical indicator used to determine when a trend is exhausted
What is Volatility in the NNFX trading system?
In the NNFX (No Nonsense Forex) trading system, ATR (Average True Range) is typically used to measure the volatility of an asset. It is used as a part of the system to help determine the appropriate stop loss and take profit levels for a trade. ATR is calculated by taking the average of the true range values over a specified period.
True range is calculated as the maximum of the following values:
-Current high minus the current low
-Absolute value of the current high minus the previous close
-Absolute value of the current low minus the previous close
ATR is a dynamic indicator that changes with changes in volatility. As volatility increases, the value of ATR increases, and as volatility decreases, the value of ATR decreases. By using ATR in NNFX system, traders can adjust their stop loss and take profit levels according to the volatility of the asset being traded. This helps to ensure that the trade is given enough room to move, while also minimizing potential losses.
Other types of volatility include True Range Double (TRD), Close-to-Close, and Garman-Klass
What is a Baseline indicator?
The baseline is essentially a moving average, and is used to determine the overall direction of the market.
The baseline in the NNFX system is used to filter out trades that are not in line with the long-term trend of the market. The baseline is plotted on the chart along with other indicators, such as the Moving Average (MA), the Relative Strength Index (RSI), and the Average True Range (ATR).
Trades are only taken when the price is in the same direction as the baseline. For example, if the baseline is sloping upwards, only long trades are taken, and if the baseline is sloping downwards, only short trades are taken. This approach helps to ensure that trades are in line with the overall trend of the market, and reduces the risk of entering trades that are likely to fail.
By using a baseline in the NNFX system, traders can have a clear reference point for determining the overall trend of the market, and can make more informed trading decisions. The baseline helps to filter out noise and false signals, and ensures that trades are taken in the direction of the long-term trend.
What is a Confirmation indicator?
Confirmation indicators are technical indicators that are used to confirm the signals generated by primary indicators. Primary indicators are the core indicators used in the NNFX system, such as the Average True Range (ATR), the Moving Average (MA), and the Relative Strength Index (RSI).
The purpose of the confirmation indicators is to reduce false signals and improve the accuracy of the trading system. They are designed to confirm the signals generated by the primary indicators by providing additional information about the strength and direction of the trend.
Some examples of confirmation indicators that may be used in the NNFX system include the Bollinger Bands, the MACD (Moving Average Convergence Divergence), and the MACD Oscillator. These indicators can provide information about the volatility, momentum, and trend strength of the market, and can be used to confirm the signals generated by the primary indicators.
In the NNFX system, confirmation indicators are used in combination with primary indicators and other filters to create a trading system that is robust and reliable. By using multiple indicators to confirm trading signals, the system aims to reduce the risk of false signals and improve the overall profitability of the trades.
What is a Continuation indicator?
In the NNFX (No Nonsense Forex) trading system, a continuation indicator is a technical indicator that is used to confirm a current trend and predict that the trend is likely to continue in the same direction. A continuation indicator is typically used in conjunction with other indicators in the system, such as a baseline indicator, to provide a comprehensive trading strategy.
What is a Volatility/Volume indicator?
Volume indicators, such as the On Balance Volume (OBV), the Chaikin Money Flow (CMF), or the Volume Price Trend (VPT), are used to measure the amount of buying and selling activity in a market. They are based on the trading volume of the market, and can provide information about the strength of the trend. In the NNFX system, volume indicators are used to confirm trading signals generated by the Moving Average and the Relative Strength Index. Volatility indicators include Average Direction Index, Waddah Attar, and Volatility Ratio. In the NNFX trading system, volatility is a proxy for volume and vice versa.
By using volume indicators as confirmation tools, the NNFX trading system aims to reduce the risk of false signals and improve the overall profitability of trades. These indicators can provide additional information about the market that is not captured by the primary indicators, and can help traders to make more informed trading decisions. In addition, volume indicators can be used to identify potential changes in market trends and to confirm the strength of price movements.
What is an Exit indicator?
The exit indicator is used in conjunction with other indicators in the system, such as the Moving Average (MA), the Relative Strength Index (RSI), and the Average True Range (ATR), to provide a comprehensive trading strategy.
The exit indicator in the NNFX system can be any technical indicator that is deemed effective at identifying optimal exit points. Examples of exit indicators that are commonly used include the Parabolic SAR, the Average Directional Index (ADX), and the Chandelier Exit.
The purpose of the exit indicator is to identify when a trend is likely to reverse or when the market conditions have changed, signaling the need to exit a trade. By using an exit indicator, traders can manage their risk and prevent significant losses.
In the NNFX system, the exit indicator is used in conjunction with a stop loss and a take profit order to maximize profits and minimize losses. The stop loss order is used to limit the amount of loss that can be incurred if the trade goes against the trader, while the take profit order is used to lock in profits when the trade is moving in the trader's favor.
Overall, the use of an exit indicator in the NNFX trading system is an important component of a comprehensive trading strategy. It allows traders to manage their risk effectively and improve the profitability of their trades by exiting at the right time.
How does Loxx's GKD (Giga Kaleidoscope Modularized Trading System) implement the NNFX algorithm outlined above?
Loxx's GKD v1.0 system has five types of modules (indicators/strategies). These modules are:
1. GKD-BT - Backtesting module (Volatility, Number 1 in the NNFX algorithm)
2. GKD-B - Baseline module (Baseline and Volatility/Volume, Numbers 1 and 2 in the NNFX algorithm)
3. GKD-C - Confirmation 1/2 and Continuation module (Confirmation 1/2 and Continuation, Numbers 3, 4, and 5 in the NNFX algorithm)
4. GKD-V - Volatility/Volume module (Confirmation 1/2, Number 6 in the NNFX algorithm)
5. GKD-E - Exit module (Exit, Number 7 in the NNFX algorithm)
(additional module types will added in future releases)
Each module interacts with every module by passing data between modules. Data is passed between each module as described below:
GKD-B => GKD-V => GKD-C(1) => GKD-C(2) => GKD-C(Continuation) => GKD-E => GKD-BT
That is, the Baseline indicator passes its data to Volatility/Volume. The Volatility/Volume indicator passes its values to the Confirmation 1 indicator. The Confirmation 1 indicator passes its values to the Confirmation 2 indicator. The Confirmation 2 indicator passes its values to the Continuation indicator. The Continuation indicator passes its values to the Exit indicator, and finally, the Exit indicator passes its values to the Backtest strategy.
This chaining of indicators requires that each module conform to Loxx's GKD protocol, therefore allowing for the testing of every possible combination of technical indicators that make up the six components of the NNFX algorithm.
What does the application of the GKD trading system look like?
Example trading system:
Backtest: Strategy with 1-3 take profits, trailing stop loss, multiple types of PnL volatility, and 2 backtesting styles
Baseline: Hull Moving Average
Volatility/Volume: Hurst Exponent
Confirmation 1: Time Fractal Energy Adaptive Laguerre RSI as shown on the chart above
Confirmation 2: Williams Percent Range
Continuation: Time Fractal Energy Adaptive Laguerre RSI
Exit: Rex Oscillator
Each GKD indicator is denoted with a module identifier of either: GKD-BT, GKD-B, GKD-C, GKD-V, or GKD-E. This allows traders to understand to which module each indicator belongs and where each indicator fits into the GKD protocol chain.
Giga Kaleidoscope Modularized Trading System Signals (based on the NNFX algorithm)
Standard Entry
1. GKD-C Confirmation 1 Signal
2. GKD-B Baseline agrees
3. Price is within a range of 0.2x Volatility and 1.0x Volatility of the Goldie Locks Mean
4. GKD-C Confirmation 2 agrees
5. GKD-V Volatility/Volume agrees
Baseline Entry
1. GKD-B Baseline signal
2. GKD-C Confirmation 1 agrees
3. Price is within a range of 0.2x Volatility and 1.0x Volatility of the Goldie Locks Mean
4. GKD-C Confirmation 2 agrees
5. GKD-V Volatility/Volume agrees
6. GKD-C Confirmation 1 signal was less than 7 candles prior
Volatility/Volume Entry
1. GKD-V Volatility/Volume signal
2. GKD-C Confirmation 1 agrees
3. Price is within a range of 0.2x Volatility and 1.0x Volatility of the Goldie Locks Mean
4. GKD-C Confirmation 2 agrees
5. GKD-B Baseline agrees
6. GKD-C Confirmation 1 signal was less than 7 candles prior
Continuation Entry
1. Standard Entry, Baseline Entry, or Pullback; entry triggered previously
2. GKD-B Baseline hasn't crossed since entry signal trigger
3. GKD-C Confirmation Continuation Indicator signals
4. GKD-C Confirmation 1 agrees
5. GKD-B Baseline agrees
6. GKD-C Confirmation 2 agrees
1-Candle Rule Standard Entry
1. GKD-C Confirmation 1 signal
2. GKD-B Baseline agrees
3. Price is within a range of 0.2x Volatility and 1.0x Volatility of the Goldie Locks Mean
Next Candle:
1. Price retraced (Long: close < close or Short: close > close )
2. GKD-B Baseline agrees
3. GKD-C Confirmation 1 agrees
4. GKD-C Confirmation 2 agrees
5. GKD-V Volatility/Volume agrees
1-Candle Rule Baseline Entry
1. GKD-B Baseline signal
2. GKD-C Confirmation 1 agrees
3. Price is within a range of 0.2x Volatility and 1.0x Volatility of the Goldie Locks Mean
4. GKD-C Confirmation 1 signal was less than 7 candles prior
Next Candle:
1. Price retraced (Long: close < close or Short: close > close )
2. GKD-B Baseline agrees
3. GKD-C Confirmation 1 agrees
4. GKD-C Confirmation 2 agrees
5. GKD-V Volatility/Volume Agrees
1-Candle Rule Volatility/Volume Entry
1. GKD-V Volatility/Volume signal
2. GKD-C Confirmation 1 agrees
3. Price is within a range of 0.2x Volatility and 1.0x Volatility of the Goldie Locks Mean
4. GKD-C Confirmation 1 signal was less than 7 candles prior
Next Candle:
1. Price retraced (Long: close < close or Short: close > close)
2. GKD-B Volatility/Volume agrees
3. GKD-C Confirmation 1 agrees
4. GKD-C Confirmation 2 agrees
5. GKD-B Baseline agrees
PullBack Entry
1. GKD-B Baseline signal
2. GKD-C Confirmation 1 agrees
3. Price is beyond 1.0x Volatility of Baseline
Next Candle:
1. Price is within a range of 0.2x Volatility and 1.0x Volatility of the Goldie Locks Mean
2. GKD-C Confirmation 1 agrees
3. GKD-C Confirmation 2 agrees
4. GKD-V Volatility/Volume Agrees
]█ Setting up the GKD
The GKD system involves chaining indicators together. These are the steps to set this up.
Use a GKD-C indicator alone on a chart
1. Inside the GKD-C indicator, change the "Confirmation Type" setting to "Solo Confirmation Simple"
Use a GKD-V indicator alone on a chart
**nothing, it's already useable on the chart without any settings changes
Use a GKD-B indicator alone on a chart
**nothing, it's already useable on the chart without any settings changes
Baseline (Baseline, Backtest)
1. Import the GKD-B Baseline into the GKD-BT Backtest: "Input into Volatility/Volume or Backtest (Baseline testing)"
2. Inside the GKD-BT Backtest, change the setting "Backtest Special" to "Baseline"
Volatility/Volume (Volatility/Volume, Backte st)
1. Inside the GKD-V indicator, change the "Testing Type" setting to "Solo"
2. Inside the GKD-V indicator, change the "Signal Type" setting to "Crossing" (neither traditional nor both can be backtested)
3. Import the GKD-V indicator into the GKD-BT Backtest: "Input into C1 or Backtest"
4. Inside the GKD-BT Backtest, change the setting "Backtest Special" to "Volatility/Volume"
5. Inside the GKD-BT Backtest, a) change the setting "Backtest Type" to "Trading" if using a directional GKD-V indicator; or, b) change the setting "Backtest Type" to "Full" if using a directional or non-directional GKD-V indicator (non-directional GKD-V can only test Longs and Shorts separately)
6. If "Backtest Type" is set to "Full": Inside the GKD-BT Backtest, change the setting "Backtest Side" to "Long" or "Short
7. If "Backtest Type" is set to "Full": To allow the system to open multiple orders at one time so you test all Longs or Shorts, open the GKD-BT Backtest, click the tab "Properties" and then insert a value of something like 10 orders into the "Pyramiding" settings. This will allow 10 orders to be opened at one time which should be enough to catch all possible Longs or Shorts.
Solo Confirmation Simple (Confirmation, Backtest)
1. Inside the GKD-C indicator, change the "Confirmation Type" setting to "Solo Confirmation Simple"
1. Import the GKD-C indicator into the GKD-BT Backtest: "Input into Backtest"
2. Inside the GKD-BT Backtest, change the setting "Backtest Special" to "Solo Confirmation Simple"
Solo Confirmation Complex without Exits (Baseline, Volatility/Volume, Confirmation, Backtest)
1. Inside the GKD-V indicator, change the "Testing Type" setting to "Chained"
2. Import the GKD-B Baseline into the GKD-V indicator: "Input into Volatility/Volume or Backtest (Baseline testing)"
3. Inside the GKD-C indicator, change the "Confirmation Type" setting to "Solo Confirmation Complex"
4. Import the GKD-V indicator into the GKD-C indicator: "Input into C1 or Backtest"
5. Inside the GKD-BT Backtest, change the setting "Backtest Special" to "GKD Full wo/ Exits"
6. Import the GKD-C into the GKD-BT Backtest: "Input into Exit or Backtest"
Solo Confirmation Complex with Exits (Baseline, Volatility/Volume, Confirmation, Exit, Backtest)
1. Inside the GKD-V indicator, change the "Testing Type" setting to "Chained"
2. Import the GKD-B Baseline into the GKD-V indicator: "Input into Volatility/Volume or Backtest (Baseline testing)"
3. Inside the GKD-C indicator, change the "Confirmation Type" setting to "Solo Confirmation Complex"
4. Import the GKD-V indicator into the GKD-C indicator: "Input into C1 or Backtest"
5. Import the GKD-C indicator into the GKD-E indicator: "Input into Exit"
6. Inside the GKD-BT Backtest, change the setting "Backtest Special" to "GKD Full w/ Exits"
7. Import the GKD-E into the GKD-BT Backtest: "Input into Backtest"
Full GKD without Exits (Baseline, Volatility/Volume, Confirmation 1, Confirmation 2, Continuation, Backtest)
1. Inside the GKD-V indicator, change the "Testing Type" setting to "Chained"
2. Import the GKD-B Baseline into the GKD-V indicator: "Input into Volatility/Volume or Backtest (Baseline testing)"
3. Inside the GKD-C 1 indicator, change the "Confirmation Type" setting to "Confirmation 1"
4. Import the GKD-V indicator into the GKD-C 1 indicator: "Input into C1 or Backtest"
5. Inside the GKD-C 2 indicator, change the "Confirmation Type" setting to "Confirmation 2"
6. Import the GKD-C 1 indicator into the GKD-C 2 indicator: "Input into C2"
7. Inside the GKD-C Continuation indicator, change the "Confirmation Type" setting to "Continuation"
8. Inside the GKD-BT Backtest, change the setting "Backtest Special" to "GKD Full wo/ Exits"
9. Import the GKD-E into the GKD-BT Backtest: "Input into Exit or Backtest"
Full GKD with Exits (Baseline, Volatility/Volume, Confirmation 1, Confirmation 2, Continuation, Exit, Backtest)
1. Inside the GKD-V indicator, change the "Testing Type" setting to "Chained"
2. Import the GKD-B Baseline into the GKD-V indicator: "Input into Volatility/Volume or Backtest (Baseline testing)"
3. Inside the GKD-C 1 indicator, change the "Confirmation Type" setting to "Confirmation 1"
4. Import the GKD-V indicator into the GKD-C 1 indicator: "Input into C1 or Backtest"
5. Inside the GKD-C 2 indicator, change the "Confirmation Type" setting to "Confirmation 2"
6. Import the GKD-C 1 indicator into the GKD-C 2 indicator: "Input into C2"
7. Inside the GKD-C Continuation indicator, change the "Confirmation Type" setting to "Continuation"
8. Import the GKD-C Continuation indicator into the GKD-E indicator: "Input into Exit"
9. Inside the GKD-BT Backtest, change the setting "Backtest Special" to "GKD Full w/ Exits"
10. Import the GKD-E into the GKD-BT Backtest: "Input into Backtest"
Baseline + Volatility/Volume (Baseline, Volatility/Volume, Backtest)
1. Inside the GKD-V indicator, change the "Testing Type" setting to "Baseline + Volatility/Volume"
2. Inside the GKD-V indicator, make sure the "Signal Type" setting is set to "Traditional"
3. Import the GKD-B Baseline into the GKD-V indicator: "Input into Volatility/Volume or Backtest (Baseline testing)"
4. Inside the GKD-BT Backtest, change the setting "Backtest Special" to "Baseline + Volatility/Volume"
5. Import the GKD-V into the GKD-BT Backtest: "Input into C1 or Backtest"
6. Inside the GKD-BT Backtest, change the setting "Backtest Type" to "Full". For this backtest, you must test Longs and Shorts separately
7. To allow the system to open multiple orders at one time so you can test all Longs or Shorts, open the GKD-BT Backtest, click the tab "Properties" and then insert a value of something like 10 orders into the "Pyramiding" settings. This will allow 10 orders to be opened at one time which should be enough to catch all possible Longs or Shorts.
Requirements
Inputs
Confirmation 1: GKD-V Volatility / Volume indicator
Confirmation 2: GKD-C Confirmation indicator
Continuation: GKD-C Confirmation indicator
Solo Confirmation Simple: GKD-B Baseline
Solo Confirmation Complex: GKD-V Volatility / Volume indicator
Solo Confirmation Super Complex: GKD-V Volatility / Volume indicator
Stacked 1: None
Stacked 2+: GKD-C, GKD-V, or GKD-B Stacked 1
Outputs
Confirmation 1: GKD-C Confirmation 2 indicator
Confirmation 2: GKD-C Continuation indicator
Continuation: GKD-E Exit indicator
Solo Confirmation Simple: GKD-BT Backtest
Solo Confirmation Complex: GKD-BT Backtest or GKD-E Exit indicator
Solo Confirmation Super Complex: GKD-C Continuation indicator
Stacked 1: GKD-C, GKD-V, or GKD-B Stacked 2+
Stacked 2+: GKD-C, GKD-V, or GKD-B Stacked 2+ or GKD-BT Backtest
Additional features will be added in future releases.
GKD-C QQE of Variety RSI [Loxx]Giga Kaleidoscope GKD-C QQE of Variety RSI is a Confirmation module included in Loxx's "Giga Kaleidoscope Modularized Trading System".
█ GKD-C QQE of Variety RSI
QQE: A Comprehensive Alternative to the Relative Strength Index
The Relative Strength Index (RSI) is a popular technical indicator that measures the speed and change of price movements to help traders identify potential trend reversals, overbought, and oversold conditions. Although the RSI is widely used, it has its limitations, and traders often seek alternative or complementary indicators to improve their market analysis. One such alternative is the Qualitative Quantitative Estimation (QQE) indicator, a comprehensive oscillator that combines the features of the RSI with additional smoothing and volatility adjustments. In the following, we will explore the QQE indicator, its calculation, and its potential benefits compared to using any type of RSI alone.
QQE Indicator
The QQE indicator was developed by an unknown author and is based on the RSI with additional modifications to enhance its performance. The QQE calculation involves three main steps:
1. The first step is to compute the RSI value for a specified period using the traditional RSI formula.
2. The second step is to apply a smoothing technique, such as the Wilder's smoothing or an exponential moving average (EMA), to the RSI value, resulting in the smoothed RSI.
3. The third step is to calculate the volatility-adjusted upper and lower bands (referred to as the QQE lines) around the smoothed RSI using an ATR-based (Average True Range) multiplier.
The QQE indicator is typically displayed as an oscillator with the smoothed RSI line in the middle and the upper and lower QQE lines acting as dynamic boundaries.
Comparison with the RSI
To better understand the potential benefits of the QQE indicator compared to using any type of RSI alone, let's examine its key features and how they may contribute to improved market analysis.
Advantages
1. The QQE indicator provides a more comprehensive view of the market by combining the strengths of the RSI with additional smoothing and volatility adjustments. This may result in a more reliable and accurate reflection of market conditions and price trends.
2. The smoothed RSI line in the QQE oscillator can help filter out noise and reduce the number of false signals often experienced when using the traditional RSI alone, making it easier for traders to identify genuine trend reversals and trading opportunities.
3. The dynamic QQE lines offer an additional layer of information by accounting for market volatility. This can help traders to better gauge the strength of price movements and identify potential support and resistance levels.
4. The QQE indicator can be used as a standalone tool or in combination with other technical indicators, providing traders with greater flexibility in their market analysis.
Disadvantages
1. The QQE indicator may be more complex to understand and implement than the traditional RSI due to the additional smoothing and volatility adjustments involved in its calculation.
2. As the QQE indicator is less widely known and used than the RSI, traders may find it more challenging to find resources and support for incorporating this indicator into their trading strategies.
Conclusion:
The QQE indicator is a versatile and comprehensive alternative to the traditional RSI, offering potential benefits in terms of noise reduction, volatility adjustment, and improved market analysis. However, it is important to recognize its limitations, such as increased complexity and limited resources compared to the RSI. Traders should carefully consider the potential advantages and drawbacks of using the QQE indicator before integrating it into their trading strategies. Ultimately, the choice between the QQE and any type of RSI will depend on individual traders' preferences and the specific market conditions they are analyzing.
This indicator includes 3 types of signals
1. Middle cross
2. Levels cross
3. Slow Trend cross
This indicator includes 9 types of RSI
1. Regular RSI
2. Slow RSI
3. Ehlers Smoothed RSI
4. Cutler's RSI or Rapid RSI
5. RSI T3
6. RSI DEMA
7. Harris' RSI
8. RSI TEMA
9. Jurik RSX
Regular RSI
The Relative Strength Index (RSI) is a widely used technical indicator in the field of financial market analysis. Developed by J. Welles Wilder Jr. in 1978, the RSI is a momentum oscillator that measures the speed and change of price movements. It helps traders identify potential trend reversals, overbought, and oversold conditions in a market.
The RSI is calculated based on the average gains and losses of an asset over a specified period, typically 14 days. The formula for calculating the RSI is as follows:
RSI = 100 - (100 / (1 + RS))
Where:
RS (Relative Strength) = Average gain over the specified period / Average loss over the specified period
The RSI ranges from 0 to 100, with values above 70 generally considered overbought (potentially indicating that the asset is overvalued and may experience a price decline) and values below 30 considered oversold (potentially indicating that the asset is undervalued and may experience a price increase).
Slow RSI
The Slow RSI is a variation of the standard RSI, which introduces a smoothing technique to the RSI calculation itself. The primary difference between the Slow RSI and the standard RSI lies in the calculation of the RSI value. In the Slow RSI, the current RSI value is calculated as a moving average of the previous RSI value and the standard RSI value for the current period.
The primary advantage of the Slow RSI is that it offers enhanced signal stability, reducing noise and potentially providing more reliable trading signals for traders.
Comparison with the original RSI
To better understand the potential advantages and disadvantages of the Slow RSI, it is essential to compare its performance against the original RSI.
Advantages
1. The Slow RSI provides enhanced signal stability by smoothing the RSI calculation, which can help traders better assess market conditions and identify potential overbought or oversold situations.
2. By offering more stable and reliable signals, the Slow RSI may improve the performance of trading strategies based on the RSI, especially in noisy or choppy market conditions.
Disadvantages
1. The smoothing technique employed by the Slow RSI may result in a slower response to changes in price momentum compared to the original RSI. This could lead to delayed signals for entering or exiting trades, which may not be ideal for short-term traders or fast-moving markets.
2. As the Slow RSI is less known and less widely used than the standard RSI, traders may find it more challenging to find resources and support for implementing this variation of the indicator.
The Slow RSI is an interesting modification of the standard RSI, offering potential benefits in terms of signal stability and reliability. However, it is crucial to recognize its limitations, such as a potentially slower response to changes in price momentum. Traders should carefully consider the potential advantages and drawbacks of using the Slow RSI compared to the original RSI before incorporating it into their trading strategies. Ultimately, the choice between the original RSI and the Slow RSI will depend on individual traders' preferences and the specific market conditions they are analyzing.
Ehlers Smoothed RSI
Ehlers Smoothed RSI is a variation of the standard RSI developed by John F. Ehlers, which introduces a smoothing technique to the price input data. The smoothing process involves averaging the current price with the previous two price values, which helps reduce noise and provide a more accurate representation of price momentum. The calculation of up and down price movements remains similar to the original RSI, but the smoothing technique alters the input data.
The primary advantage of Ehlers Smoothed RSI is that it reduces noise and offers a more accurate representation of price momentum, potentially providing more reliable signals for traders.
Comparison with the original RSI
To better understand the potential advantages and disadvantages of Ehlers Smoothed RSI, it is essential to compare its performance against the original RSI.
Advantages
1. Ehlers Smoothed RSI reduces noise by smoothing the price input data, which can help traders better assess market conditions and identify potential overbought or oversold situations.
2. By providing a more accurate representation of price momentum, Ehlers Smoothed RSI may offer more reliable signals for entering or exiting trades, potentially improving the performance of trading strategies based on the RSI.
Disadvantages
1. The smoothing technique employed by Ehlers Smoothed RSI may result in a slower response to changes in price momentum compared to the original RSI. This could lead to delayed signals for entering or exiting trades, which may not be ideal for short-term traders or fast-moving markets.
2. As Ehlers Smoothed RSI is less known and less widely used than the standard RSI, traders may find it more challenging to find resources and support for implementing this variation of the indicator.
Ehlers Smoothed RSI is an intriguing modification of the standard RSI, offering potential benefits in terms of noise reduction and accuracy. However, it is crucial to recognize its limitations, such as a potentially slower response to changes in price momentum. Traders should carefully consider the potential advantages and drawbacks of using Ehlers Smoothed RSI compared to the original RSI before incorporating it into their trading strategies. Ultimately, the choice between the original RSI and Ehlers Smoothed RSI will depend on individual traders' preferences and the specific market conditions they are analyzing.
Cutler's RSI or Rapid RSI
Cutler's RSI is a variation of the standard RSI, which modifies the calculation of average gains and losses. While the original RSI employs exponential moving averages (EMAs) for average gains and losses, Cutler's RSI utilizes simple moving averages (SMAs) instead. This change results in a slightly different behavior of the oscillator compared to the original RSI.
The primary advantage of Cutler's RSI is that it offers a simpler calculation method, which can potentially make it easier to understand and implement for traders. Additionally, by using SMAs, Cutler's RSI may provide a more consistent and stable representation of price momentum.
Comparison with the original RSI
It is essential to recognize the limitations and performance of Cutler's RSI compared to the original RSI to understand its potential advantages and disadvantages better.
Advantages
1. Cutler's RSI has a simpler calculation method, using SMAs instead of EMAs. This makes it easier to understand and implement for traders who prefer a more straightforward approach to technical analysis.
2. By using SMAs, Cutler's RSI may provide a more stable and consistent representation of price momentum, which can help traders better assess market conditions and identify potential overbought or oversold situations.
Disadvantages
1. The use of SMAs in Cutler's RSI may result in a slower response to changes in price momentum compared to the original RSI. This could lead to delayed signals for entering or exiting trades, which may not be ideal for short-term traders or fast-moving markets.
2. As Cutler's RSI is less known and less widely used than the standard RSI, it may be more challenging to find resources and support for implementing this variation of the indicator.
Cutler's RSI is an interesting modification of the standard RSI, offering potential benefits in terms of simplicity and stability. However, it is crucial to recognize its limitations, such as a potentially slower response to changes in price momentum. Traders should carefully consider the potential advantages and drawbacks of using Cutler's RSI compared to the original RSI before incorporating it into their trading strategies. Ultimately, the choice between the original RSI and Cutler's RSI will depend on individual traders' preferences and the specific market conditions they are analyzing.
RSI T3
The T3 RSI is a variation of the standard RSI that introduces the Triple Smoothed Exponential Moving Average (T3) into the calculation process. The primary difference between the T3 RSI and the standard RSI lies in the calculation of the average gains and losses. Instead of using simple moving averages or exponential moving averages, the T3 RSI utilizes T3 to calculate the average gains and losses for up and down price movements.
The primary advantage of the T3 RSI is that it offers enhanced responsiveness and accuracy compared to the original RSI, potentially providing more reliable trading signals for traders.
Comparison with the original RSI
To better understand the potential advantages and disadvantages of the T3 RSI, it is essential to compare its performance against the original RSI.
Advantages
1. The T3 RSI provides enhanced responsiveness and accuracy by incorporating the Triple Smoothed Exponential Moving Average into the calculation of average gains and losses. This can help traders better assess market conditions and identify potential overbought or oversold situations.
2. By offering more responsive and accurate signals, the T3 RSI may improve the performance of trading strategies based on the RSI, especially in fast-moving markets or during periods of high price volatility.
Disadvantages
1. The T3 RSI's increased responsiveness may result in more frequent trading signals, which could lead to higher trading costs or a higher likelihood of false signals.
2. As the T3 RSI is less known and less widely used than the standard RSI, traders may find it more challenging to find resources and support for implementing this variation of the indicator.
The T3 RSI is an innovative modification of the standard RSI, offering potential benefits in terms of responsiveness and accuracy. However, it is crucial to recognize its limitations, such as a potentially higher likelihood of false signals due to increased responsiveness. Traders should carefully consider the potential advantages and drawbacks of using the T3 RSI compared to the original RSI before incorporating it into their trading strategies. Ultimately, the choice between the original RSI and the T3 RSI will depend on individual traders' preferences and the specific market conditions they are analyzing.
RSI DEMA
The DEMA RSI is a variation of the standard RSI that introduces the Double Exponential Moving Average (DEMA) into the calculation process. The primary difference between the DEMA RSI and the standard RSI lies in the calculation of the average gains and losses. Instead of using simple moving averages or exponential moving averages, the DEMA RSI utilizes DEMA to calculate the average gains and losses for up and down price movements.
The primary advantage of the DEMA RSI is that it offers enhanced responsiveness and accuracy compared to the original RSI, potentially providing more reliable trading signals for traders.
Comparison with the original RSI
To better understand the potential advantages and disadvantages of the DEMA RSI, it is essential to compare its performance against the original RSI.
Advantages
1. The DEMA RSI provides enhanced responsiveness and accuracy by incorporating the Double Exponential Moving Average into the calculation of average gains and losses. This can help traders better assess market conditions and identify potential overbought or oversold situations.
2. By offering more responsive and accurate signals, the DEMA RSI may improve the performance of trading strategies based on the RSI, especially in fast-moving markets or during periods of high price volatility.
Disadvantages
1. The DEMA RSI's increased responsiveness may result in more frequent trading signals, which could lead to higher trading costs or a higher likelihood of false signals.
2. As the DEMA RSI is less known and less widely used than the standard RSI, traders may find it more challenging to find resources and support for implementing this variation of the indicator.
The DEMA RSI is an innovative modification of the standard RSI, offering potential benefits in terms of responsiveness and accuracy. However, it is crucial to recognize its limitations, such as a potentially higher likelihood of false signals due to increased responsiveness. Traders should carefully consider the potential advantages and drawbacks of using the DEMA RSI compared to the original RSI before incorporating it into their trading strategies. Ultimately, the choice between the original RSI and the DEMA RSI will depend on individual traders' preferences and the specific market conditions they are analyzing.
Harris' RSI
Harris' RSI is a variation of the standard RSI, designed to address some of its limitations and improve its performance in detecting potential trend reversals and filtering out noise. The key difference between the Harris' RSI and the standard RSI lies in the calculation of average gains and losses. While the standard RSI calculation uses exponential moving averages (EMAs) of gains and losses, Harris' RSI uses a different approach to compute the average gains and losses based on the number of up and down price movements.
The primary advantage of Harris' RSI is that it aims to provide a more adaptive and responsive indicator, making it better suited for detecting potential trend reversals and filtering out noise in the market. By taking into account the number of up and down price movements, Harris' RSI can be more sensitive to changes in the trend, potentially providing earlier signals for entering or exiting trades.
Comparison with the original RSI
While Harris' RSI offers potential improvements over the standard RSI, it is essential to recognize its limitations and compare its performance against the original RSI.
Advantages
1. Harris' RSI can potentially provide earlier signals for trend reversals due to its sensitivity to the number of up and down price movements. This can help traders to identify better entry and exit points in the market.
2. By focusing on the number of up and down price movements, Harris' RSI can filter out noise in the market, reducing the likelihood of false signals that may lead to losing trades.
Disadvantages
1. The increased sensitivity of Harris' RSI to price movements can lead to more frequent signals, which may result in overtrading and increased trading costs.
2. Harris' RSI is less known and less widely used than the standard RSI, which may make it more challenging to find resources and support for implementing this variation of the indicator.
Harris' RSI is an interesting variation of the standard RSI, offering potential advantages in detecting trend reversals and filtering out noise. However, like any technical indicator, it has its limitations and may not be suitable for all trading styles or market conditions. Traders should carefully consider the potential benefits and drawbacks of using Harris' RSI compared to the original RSI before incorporating it into their trading strategies. Ultimately, the choice between the original RSI and Harris' RSI will depend on individual traders' preferences and the specific market conditions they are analyzing.
RSI TEMA
The TEMA RSI is a variation of the standard RSI that introduces the Triple Exponential Moving Average (TEMA) into the calculation process. The primary difference between the TEMA RSI and the standard RSI lies in the calculation of the average gains and losses. Instead of using simple moving averages or exponential moving averages, the TEMA RSI utilizes TEMA to calculate the average gains and losses for up and down price movements.
The primary advantage of the TEMA RSI is that it offers enhanced responsiveness and accuracy compared to the original RSI, potentially providing more reliable trading signals for traders.
Comparison with the original RSI
To better understand the potential advantages and disadvantages of the TEMA RSI, it is essential to compare its performance against the original RSI.
Advantages
1. The TEMA RSI provides enhanced responsiveness and accuracy by incorporating the Triple Exponential Moving Average into the calculation of average gains and losses. This can help traders better assess market conditions and identify potential overbought or oversold situations.
2. By offering more responsive and accurate signals, the TEMA RSI may improve the performance of trading strategies based on the RSI, especially in fast-moving markets or during periods of high price volatility.
Disadvantages
1. The TEMA RSI's increased responsiveness may result in more frequent trading signals, which could lead to higher trading costs or a higher likelihood of false signals.
2. As the TEMA RSI is less known and less widely used than the standard RSI, traders may find it more challenging to find resources and support for implementing this variation of the indicator.
The TEMA RSI is an innovative modification of the standard RSI, offering potential benefits in terms of responsiveness and accuracy. However, it is crucial to recognize its limitations, such as a potentially higher likelihood of false signals due to increased responsiveness. Traders should carefully consider the potential advantages and drawbacks of using the TEMA RSI compared to the original RSI before incorporating it into their trading strategies. Ultimately, the choice between the original RSI and the TEMA RSI will depend on individual traders' preferences and the specific market conditions they are analyzing.
Jurik RSX
The Jurik RSX, developed by Mark Jurik, is a variation of the standard RSI that aims to provide a smoother and more responsive indicator by applying a unique smoothing algorithm based on a series of recursive calculations. The Jurik RSX calculates the price momentum (mom) and the absolute price momentum (moa) using a three-stage filtering process, which ultimately results in a smoother and more responsive output compared to the original RSI.
Comparison with the original RSI
To better understand the potential benefits and drawbacks of the Jurik RSX, it is essential to compare its performance against the original RSI.
Advantages
1. The Jurik RSX offers enhanced responsiveness and smoothness due to its unique recursive filtering process, allowing traders to better identify potential trend reversals, overbought, and oversold conditions.
2. The improved responsiveness of the Jurik RSX may result in more timely trading signals, helping traders to capitalize on opportunities more effectively, especially in fast-moving markets or during periods of high price volatility.
Disadvantages
1. The increased complexity of the Jurik RSX calculation may make it more challenging for traders to understand and implement compared to the original RSI.
2. As the Jurik RSX is less known and less widely used than the standard RSI, traders may find it more difficult to find resources and support for implementing this variation of the indicator.
The Jurik RSX is an innovative modification of the standard RSI, offering potential benefits in terms of responsiveness and smoothness. However, it is crucial to recognize its limitations, such as increased complexity and limited resources compared to the original RSI. Traders should carefully consider the potential advantages and drawbacks of using the Jurik RSX before incorporating it into their trading strategies. Ultimately, the choice between the original RSI and the Jurik RSX will depend on individual traders' preferences and the specific market conditions they are analyzing.
Additional Features
This indicator allows you to select from 33 source types. They are as follows:
Close
Open
High
Low
Median
Typical
Weighted
Average
Average Median Body
Trend Biased
Trend Biased (Extreme)
HA Close
HA Open
HA High
HA Low
HA Median
HA Typical
HA Weighted
HA Average
HA Average Median Body
HA Trend Biased
HA Trend Biased (Extreme)
HAB Close
HAB Open
HAB High
HAB Low
HAB Median
HAB Typical
HAB Weighted
HAB Average
HAB Average Median Body
HAB Trend Biased
HAB Trend Biased (Extreme)
What are Heiken Ashi "better" candles?
Heiken Ashi "better" candles are a modified version of the standard Heiken Ashi candles, which are a popular charting technique used in technical analysis. Heiken Ashi candles help traders identify trends and potential reversal points by smoothing out price data and reducing market noise. The "better formula" was proposed by Sebastian Schmidt in an article published by BNP Paribas in Warrants & Zertifikate, a German magazine, in August 2004. The aim of this formula is to further improve the smoothing of the Heiken Ashi chart and enhance its effectiveness in identifying trends and reversals.
Standard Heiken Ashi candles are calculated using the following formulas:
Heiken Ashi Close = (Open + High + Low + Close) / 4
Heiken Ashi Open = (Previous Heiken Ashi Open + Previous Heiken Ashi Close) / 2
Heiken Ashi High = Max (High, Heiken Ashi Open, Heiken Ashi Close)
Heiken Ashi Low = Min (Low, Heiken Ashi Open, Heiken Ashi Close)
The "better formula" modifies the standard Heiken Ashi calculation by incorporating additional smoothing, which can help reduce noise and make it easier to identify trends and reversals. The modified formulas for Heiken Ashi "better" candles are as follows:
Better Heiken Ashi Close = (Open + High + Low + Close) / 4
Better Heiken Ashi Open = (Previous Better Heiken Ashi Open + Previous Better Heiken Ashi Close) / 2
Better Heiken Ashi High = Max (High, Better Heiken Ashi Open, Better Heiken Ashi Close)
Better Heiken Ashi Low = Min (Low, Better Heiken Ashi Open, Better Heiken Ashi Close)
Smoothing Factor = 2 / (N + 1), where N is the chosen period for smoothing
Smoothed Better Heiken Ashi Open = (Better Heiken Ashi Open * Smoothing Factor) + (Previous Smoothed Better Heiken Ashi Open * (1 - Smoothing Factor))
Smoothed Better Heiken Ashi Close = (Better Heiken Ashi Close * Smoothing Factor) + (Previous Smoothed Better Heiken Ashi Close * (1 - Smoothing Factor))
The smoothed Better Heiken Ashi Open and Close values are then used to calculate the smoothed Better Heiken Ashi High and Low values, resulting in "better" candles that provide a clearer representation of the market trend and potential reversal points.
It's important to note that, like any other technical analysis tool, Heiken Ashi "better" candles are not foolproof and should be used in conjunction with other indicators and analysis techniques to make well-informed trading decisions.
Heiken Ashi "better" candles, as mentioned previously, provide a clearer representation of market trends and potential reversal points by reducing noise and smoothing out price data. When using these candles in conjunction with other technical analysis tools and indicators, traders can gain valuable insights into market behavior and make more informed decisions.
To effectively use Heiken Ashi "better" candles in your trading strategy, consider the following tips:
Trend Identification: Heiken Ashi "better" candles can help you identify the prevailing trend in the market. When the majority of the candles are green (or another color, depending on your chart settings) and there are no or few lower wicks, it may indicate a strong uptrend. Conversely, when the majority of the candles are red (or another color) and there are no or few upper wicks, it may signal a strong downtrend.
Trend Reversals: Look for potential trend reversals when a change in the color of the candles occurs, especially when accompanied by longer wicks. For example, if a green candle with a long lower wick is followed by a red candle, it could indicate a bearish reversal. Similarly, a red candle with a long upper wick followed by a green candle may suggest a bullish reversal.
Support and Resistance: You can use Heiken Ashi "better" candles to identify potential support and resistance levels. When the candles are consistently moving in one direction and then suddenly change color with longer wicks, it could indicate the presence of a support or resistance level.
Stop-Loss and Take-Profit: Using Heiken Ashi "better" candles can help you manage risk by determining optimal stop-loss and take-profit levels. For instance, you can place your stop-loss below the low of the most recent green candle in an uptrend or above the high of the most recent red candle in a downtrend.
Confirming Signals: Heiken Ashi "better" candles should be used in conjunction with other technical indicators, such as moving averages, oscillators, or chart patterns, to confirm signals and improve the accuracy of your analysis.
In this implementation, you have the choice of AMA, KAMA, or T3 smoothing. These are as follows:
Kaufman Adaptive Moving Average (KAMA)
The Kaufman Adaptive Moving Average (KAMA) is a type of adaptive moving average used in technical analysis to smooth out price fluctuations and identify trends. The KAMA adjusts its smoothing factor based on the market's volatility, making it more responsive in volatile markets and smoother in calm markets. The KAMA is calculated using three different efficiency ratios that determine the appropriate smoothing factor for the current market conditions. These ratios are based on the noise level of the market, the speed at which the market is moving, and the length of the moving average. The KAMA is a popular choice among traders who prefer to use adaptive indicators to identify trends and potential reversals.
Adaptive Moving Average
The Adaptive Moving Average (AMA) is a type of moving average that adjusts its sensitivity to price movements based on market conditions. It uses a ratio between the current price and the highest and lowest prices over a certain lookback period to determine its level of smoothing. The AMA can help reduce lag and increase responsiveness to changes in trend direction, making it useful for traders who want to follow trends while avoiding false signals. The AMA is calculated by multiplying a smoothing constant with the difference between the current price and the previous AMA value, then adding the result to the previous AMA value.
T3
The T3 moving average is a type of technical indicator used in financial analysis to identify trends in price movements. It is similar to the Exponential Moving Average (EMA) and the Double Exponential Moving Average (DEMA), but uses a different smoothing algorithm.
The T3 moving average is calculated using a series of exponential moving averages that are designed to filter out noise and smooth the data. The resulting smoothed data is then weighted with a non-linear function to produce a final output that is more responsive to changes in trend direction.
The T3 moving average can be customized by adjusting the length of the moving average, as well as the weighting function used to smooth the data. It is commonly used in conjunction with other technical indicators as part of a larger trading strategy.
█ Giga Kaleidoscope Modularized Trading System
Core components of an NNFX algorithmic trading strategy
The NNFX algorithm is built on the principles of trend, momentum, and volatility. There are six core components in the NNFX trading algorithm:
1. Volatility - price volatility; e.g., Average True Range, True Range Double, Close-to-Close, etc.
2. Baseline - a moving average to identify price trend
3. Confirmation 1 - a technical indicator used to identify trends
4. Confirmation 2 - a technical indicator used to identify trends
5. Continuation - a technical indicator used to identify trends
6. Volatility/Volume - a technical indicator used to identify volatility/volume breakouts/breakdown
7. Exit - a technical indicator used to determine when a trend is exhausted
What is Volatility in the NNFX trading system?
In the NNFX (No Nonsense Forex) trading system, ATR (Average True Range) is typically used to measure the volatility of an asset. It is used as a part of the system to help determine the appropriate stop loss and take profit levels for a trade. ATR is calculated by taking the average of the true range values over a specified period.
True range is calculated as the maximum of the following values:
-Current high minus the current low
-Absolute value of the current high minus the previous close
-Absolute value of the current low minus the previous close
ATR is a dynamic indicator that changes with changes in volatility. As volatility increases, the value of ATR increases, and as volatility decreases, the value of ATR decreases. By using ATR in NNFX system, traders can adjust their stop loss and take profit levels according to the volatility of the asset being traded. This helps to ensure that the trade is given enough room to move, while also minimizing potential losses.
Other types of volatility include True Range Double (TRD), Close-to-Close, and Garman-Klass
What is a Baseline indicator?
The baseline is essentially a moving average, and is used to determine the overall direction of the market.
The baseline in the NNFX system is used to filter out trades that are not in line with the long-term trend of the market. The baseline is plotted on the chart along with other indicators, such as the Moving Average (MA), the Relative Strength Index (RSI), and the Average True Range (ATR).
Trades are only taken when the price is in the same direction as the baseline. For example, if the baseline is sloping upwards, only long trades are taken, and if the baseline is sloping downwards, only short trades are taken. This approach helps to ensure that trades are in line with the overall trend of the market, and reduces the risk of entering trades that are likely to fail.
By using a baseline in the NNFX system, traders can have a clear reference point for determining the overall trend of the market, and can make more informed trading decisions. The baseline helps to filter out noise and false signals, and ensures that trades are taken in the direction of the long-term trend.
What is a Confirmation indicator?
Confirmation indicators are technical indicators that are used to confirm the signals generated by primary indicators. Primary indicators are the core indicators used in the NNFX system, such as the Average True Range (ATR), the Moving Average (MA), and the Relative Strength Index (RSI).
The purpose of the confirmation indicators is to reduce false signals and improve the accuracy of the trading system. They are designed to confirm the signals generated by the primary indicators by providing additional information about the strength and direction of the trend.
Some examples of confirmation indicators that may be used in the NNFX system include the Bollinger Bands, the MACD (Moving Average Convergence Divergence), and the MACD Oscillator. These indicators can provide information about the volatility, momentum, and trend strength of the market, and can be used to confirm the signals generated by the primary indicators.
In the NNFX system, confirmation indicators are used in combination with primary indicators and other filters to create a trading system that is robust and reliable. By using multiple indicators to confirm trading signals, the system aims to reduce the risk of false signals and improve the overall profitability of the trades.
What is a Continuation indicator?
In the NNFX (No Nonsense Forex) trading system, a continuation indicator is a technical indicator that is used to confirm a current trend and predict that the trend is likely to continue in the same direction. A continuation indicator is typically used in conjunction with other indicators in the system, such as a baseline indicator, to provide a comprehensive trading strategy.
What is a Volatility/Volume indicator?
Volume indicators, such as the On Balance Volume (OBV), the Chaikin Money Flow (CMF), or the Volume Price Trend (VPT), are used to measure the amount of buying and selling activity in a market. They are based on the trading volume of the market, and can provide information about the strength of the trend. In the NNFX system, volume indicators are used to confirm trading signals generated by the Moving Average and the Relative Strength Index. Volatility indicators include Average Direction Index, Waddah Attar, and Volatility Ratio. In the NNFX trading system, volatility is a proxy for volume and vice versa.
By using volume indicators as confirmation tools, the NNFX trading system aims to reduce the risk of false signals and improve the overall profitability of trades. These indicators can provide additional information about the market that is not captured by the primary indicators, and can help traders to make more informed trading decisions. In addition, volume indicators can be used to identify potential changes in market trends and to confirm the strength of price movements.
What is an Exit indicator?
The exit indicator is used in conjunction with other indicators in the system, such as the Moving Average (MA), the Relative Strength Index (RSI), and the Average True Range (ATR), to provide a comprehensive trading strategy.
The exit indicator in the NNFX system can be any technical indicator that is deemed effective at identifying optimal exit points. Examples of exit indicators that are commonly used include the Parabolic SAR, the Average Directional Index (ADX), and the Chandelier Exit.
The purpose of the exit indicator is to identify when a trend is likely to reverse or when the market conditions have changed, signaling the need to exit a trade. By using an exit indicator, traders can manage their risk and prevent significant losses.
In the NNFX system, the exit indicator is used in conjunction with a stop loss and a take profit order to maximize profits and minimize losses. The stop loss order is used to limit the amount of loss that can be incurred if the trade goes against the trader, while the take profit order is used to lock in profits when the trade is moving in the trader's favor.
Overall, the use of an exit indicator in the NNFX trading system is an important component of a comprehensive trading strategy. It allows traders to manage their risk effectively and improve the profitability of their trades by exiting at the right time.
How does Loxx's GKD (Giga Kaleidoscope Modularized Trading System) implement the NNFX algorithm outlined above?
Loxx's GKD v1.0 system has five types of modules (indicators/strategies). These modules are:
1. GKD-BT - Backtesting module (Volatility, Number 1 in the NNFX algorithm)
2. GKD-B - Baseline module (Baseline and Volatility/Volume, Numbers 1 and 2 in the NNFX algorithm)
3. GKD-C - Confirmation 1/2 and Continuation module (Confirmation 1/2 and Continuation, Numbers 3, 4, and 5 in the NNFX algorithm)
4. GKD-V - Volatility/Volume module (Confirmation 1/2, Number 6 in the NNFX algorithm)
5. GKD-E - Exit module (Exit, Number 7 in the NNFX algorithm)
(additional module types will added in future releases)
Each module interacts with every module by passing data between modules. Data is passed between each module as described below:
GKD-B => GKD-V => GKD-C(1) => GKD-C(2) => GKD-C(Continuation) => GKD-E => GKD-BT
That is, the Baseline indicator passes its data to Volatility/Volume. The Volatility/Volume indicator passes its values to the Confirmation 1 indicator. The Confirmation 1 indicator passes its values to the Confirmation 2 indicator. The Confirmation 2 indicator passes its values to the Continuation indicator. The Continuation indicator passes its values to the Exit indicator, and finally, the Exit indicator passes its values to the Backtest strategy.
This chaining of indicators requires that each module conform to Loxx's GKD protocol, therefore allowing for the testing of every possible combination of technical indicators that make up the six components of the NNFX algorithm.
What does the application of the GKD trading system look like?
Example trading system:
Backtest: Strategy with 1-3 take profits, trailing stop loss, multiple types of PnL volatility, and 2 backtesting styles
Baseline: Hull Moving Average
Volatility/Volume: Hurst Exponent
Confirmation 1: QQE of Variety RSI as shown on the chart above
Confirmation 2: Williams Percent Range
Continuation: QQE of Variety RSI
Exit: Rex Oscillator
Each GKD indicator is denoted with a module identifier of either: GKD-BT, GKD-B, GKD-C, GKD-V, or GKD-E. This allows traders to understand to which module each indicator belongs and where each indicator fits into the GKD protocol chain.
Giga Kaleidoscope Modularized Trading System Signals (based on the NNFX algorithm)
Standard Entry
1. GKD-C Confirmation 1 Signal
2. GKD-B Baseline agrees
3. Price is within a range of 0.2x Volatility and 1.0x Volatility of the Goldie Locks Mean
4. GKD-C Confirmation 2 agrees
5. GKD-V Volatility/Volume agrees
Baseline Entry
1. GKD-B Baseline signal
2. GKD-C Confirmation 1 agrees
3. Price is within a range of 0.2x Volatility and 1.0x Volatility of the Goldie Locks Mean
4. GKD-C Confirmation 2 agrees
5. GKD-V Volatility/Volume agrees
6. GKD-C Confirmation 1 signal was less than 7 candles prior
Volatility/Volume Entry
1. GKD-V Volatility/Volume signal
2. GKD-C Confirmation 1 agrees
3. Price is within a range of 0.2x Volatility and 1.0x Volatility of the Goldie Locks Mean
4. GKD-C Confirmation 2 agrees
5. GKD-B Baseline agrees
6. GKD-C Confirmation 1 signal was less than 7 candles prior
Continuation Entry
1. Standard Entry, Baseline Entry, or Pullback; entry triggered previously
2. GKD-B Baseline hasn't crossed since entry signal trigger
3. GKD-C Confirmation Continuation Indicator signals
4. GKD-C Confirmation 1 agrees
5. GKD-B Baseline agrees
6. GKD-C Confirmation 2 agrees
1-Candle Rule Standard Entry
1. GKD-C Confirmation 1 signal
2. GKD-B Baseline agrees
3. Price is within a range of 0.2x Volatility and 1.0x Volatility of the Goldie Locks Mean
Next Candle:
1. Price retraced (Long: close < close or Short: close > close )
2. GKD-B Baseline agrees
3. GKD-C Confirmation 1 agrees
4. GKD-C Confirmation 2 agrees
5. GKD-V Volatility/Volume agrees
1-Candle Rule Baseline Entry
1. GKD-B Baseline signal
2. GKD-C Confirmation 1 agrees
3. Price is within a range of 0.2x Volatility and 1.0x Volatility of the Goldie Locks Mean
4. GKD-C Confirmation 1 signal was less than 7 candles prior
Next Candle:
1. Price retraced (Long: close < close or Short: close > close )
2. GKD-B Baseline agrees
3. GKD-C Confirmation 1 agrees
4. GKD-C Confirmation 2 agrees
5. GKD-V Volatility/Volume Agrees
1-Candle Rule Volatility/Volume Entry
1. GKD-V Volatility/Volume signal
2. GKD-C Confirmation 1 agrees
3. Price is within a range of 0.2x Volatility and 1.0x Volatility of the Goldie Locks Mean
4. GKD-C Confirmation 1 signal was less than 7 candles prior
Next Candle:
1. Price retraced (Long: close < close or Short: close > close)
2. GKD-B Volatility/Volume agrees
3. GKD-C Confirmation 1 agrees
4. GKD-C Confirmation 2 agrees
5. GKD-B Baseline agrees
PullBack Entry
1. GKD-B Baseline signal
2. GKD-C Confirmation 1 agrees
3. Price is beyond 1.0x Volatility of Baseline
Next Candle:
1. Price is within a range of 0.2x Volatility and 1.0x Volatility of the Goldie Locks Mean
2. GKD-C Confirmation 1 agrees
3. GKD-C Confirmation 2 agrees
4. GKD-V Volatility/Volume Agrees
]█ Setting up the GKD
The GKD system involves chaining indicators together. These are the steps to set this up.
Use a GKD-C indicator alone on a chart
1. Inside the GKD-C indicator, change the "Confirmation Type" setting to "Solo Confirmation Simple"
Use a GKD-V indicator alone on a chart
**nothing, it's already useable on the chart without any settings changes
Use a GKD-B indicator alone on a chart
**nothing, it's already useable on the chart without any settings changes
Baseline (Baseline, Backtest)
1. Import the GKD-B Baseline into the GKD-BT Backtest: "Input into Volatility/Volume or Backtest (Baseline testing)"
2. Inside the GKD-BT Backtest, change the setting "Backtest Special" to "Baseline"
Volatility/Volume (Volatility/Volume, Backte st)
1. Inside the GKD-V indicator, change the "Testing Type" setting to "Solo"
2. Inside the GKD-V indicator, change the "Signal Type" setting to "Crossing" (neither traditional nor both can be backtested)
3. Import the GKD-V indicator into the GKD-BT Backtest: "Input into C1 or Backtest"
4. Inside the GKD-BT Backtest, change the setting "Backtest Special" to "Volatility/Volume"
5. Inside the GKD-BT Backtest, a) change the setting "Backtest Type" to "Trading" if using a directional GKD-V indicator; or, b) change the setting "Backtest Type" to "Full" if using a directional or non-directional GKD-V indicator (non-directional GKD-V can only test Longs and Shorts separately)
6. If "Backtest Type" is set to "Full": Inside the GKD-BT Backtest, change the setting "Backtest Side" to "Long" or "Short
7. If "Backtest Type" is set to "Full": To allow the system to open multiple orders at one time so you test all Longs or Shorts, open the GKD-BT Backtest, click the tab "Properties" and then insert a value of something like 10 orders into the "Pyramiding" settings. This will allow 10 orders to be opened at one time which should be enough to catch all possible Longs or Shorts.
Solo Confirmation Simple (Confirmation, Backtest)
1. Inside the GKD-C indicator, change the "Confirmation Type" setting to "Solo Confirmation Simple"
1. Import the GKD-C indicator into the GKD-BT Backtest: "Input into Backtest"
2. Inside the GKD-BT Backtest, change the setting "Backtest Special" to "Solo Confirmation Simple"
Solo Confirmation Complex without Exits (Baseline, Volatility/Volume, Confirmation, Backtest)
1. Inside the GKD-V indicator, change the "Testing Type" setting to "Chained"
2. Import the GKD-B Baseline into the GKD-V indicator: "Input into Volatility/Volume or Backtest (Baseline testing)"
3. Inside the GKD-C indicator, change the "Confirmation Type" setting to "Solo Confirmation Complex"
4. Import the GKD-V indicator into the GKD-C indicator: "Input into C1 or Backtest"
5. Inside the GKD-BT Backtest, change the setting "Backtest Special" to "GKD Full wo/ Exits"
6. Import the GKD-C into the GKD-BT Backtest: "Input into Exit or Backtest"
Solo Confirmation Complex with Exits (Baseline, Volatility/Volume, Confirmation, Exit, Backtest)
1. Inside the GKD-V indicator, change the "Testing Type" setting to "Chained"
2. Import the GKD-B Baseline into the GKD-V indicator: "Input into Volatility/Volume or Backtest (Baseline testing)"
3. Inside the GKD-C indicator, change the "Confirmation Type" setting to "Solo Confirmation Complex"
4. Import the GKD-V indicator into the GKD-C indicator: "Input into C1 or Backtest"
5. Import the GKD-C indicator into the GKD-E indicator: "Input into Exit"
6. Inside the GKD-BT Backtest, change the setting "Backtest Special" to "GKD Full w/ Exits"
7. Import the GKD-E into the GKD-BT Backtest: "Input into Backtest"
Full GKD without Exits (Baseline, Volatility/Volume, Confirmation 1, Confirmation 2, Continuation, Backtest)
1. Inside the GKD-V indicator, change the "Testing Type" setting to "Chained"
2. Import the GKD-B Baseline into the GKD-V indicator: "Input into Volatility/Volume or Backtest (Baseline testing)"
3. Inside the GKD-C 1 indicator, change the "Confirmation Type" setting to "Confirmation 1"
4. Import the GKD-V indicator into the GKD-C 1 indicator: "Input into C1 or Backtest"
5. Inside the GKD-C 2 indicator, change the "Confirmation Type" setting to "Confirmation 2"
6. Import the GKD-C 1 indicator into the GKD-C 2 indicator: "Input into C2"
7. Inside the GKD-C Continuation indicator, change the "Confirmation Type" setting to "Continuation"
8. Inside the GKD-BT Backtest, change the setting "Backtest Special" to "GKD Full wo/ Exits"
9. Import the GKD-E into the GKD-BT Backtest: "Input into Exit or Backtest"
Full GKD with Exits (Baseline, Volatility/Volume, Confirmation 1, Confirmation 2, Continuation, Exit, Backtest)
1. Inside the GKD-V indicator, change the "Testing Type" setting to "Chained"
2. Import the GKD-B Baseline into the GKD-V indicator: "Input into Volatility/Volume or Backtest (Baseline testing)"
3. Inside the GKD-C 1 indicator, change the "Confirmation Type" setting to "Confirmation 1"
4. Import the GKD-V indicator into the GKD-C 1 indicator: "Input into C1 or Backtest"
5. Inside the GKD-C 2 indicator, change the "Confirmation Type" setting to "Confirmation 2"
6. Import the GKD-C 1 indicator into the GKD-C 2 indicator: "Input into C2"
7. Inside the GKD-C Continuation indicator, change the "Confirmation Type" setting to "Continuation"
8. Import the GKD-C Continuation indicator into the GKD-E indicator: "Input into Exit"
9. Inside the GKD-BT Backtest, change the setting "Backtest Special" to "GKD Full w/ Exits"
10. Import the GKD-E into the GKD-BT Backtest: "Input into Backtest"
Baseline + Volatility/Volume (Baseline, Volatility/Volume, Backtest)
1. Inside the GKD-V indicator, change the "Testing Type" setting to "Baseline + Volatility/Volume"
2. Inside the GKD-V indicator, make sure the "Signal Type" setting is set to "Traditional"
3. Import the GKD-B Baseline into the GKD-V indicator: "Input into Volatility/Volume or Backtest (Baseline testing)"
4. Inside the GKD-BT Backtest, change the setting "Backtest Special" to "Baseline + Volatility/Volume"
5. Import the GKD-V into the GKD-BT Backtest: "Input into C1 or Backtest"
6. Inside the GKD-BT Backtest, change the setting "Backtest Type" to "Full". For this backtest, you must test Longs and Shorts separately
7. To allow the system to open multiple orders at one time so you can test all Longs or Shorts, open the GKD-BT Backtest, click the tab "Properties" and then insert a value of something like 10 orders into the "Pyramiding" settings. This will allow 10 orders to be opened at one time which should be enough to catch all possible Longs or Shorts.
Requirements
Inputs
Confirmation 1: GKD-V Volatility / Volume indicator
Confirmation 2: GKD-C Confirmation indicator
Continuation: GKD-C Confirmation indicator
Solo Confirmation Simple: GKD-B Baseline
Solo Confirmation Complex: GKD-V Volatility / Volume indicator
Solo Confirmation Super Complex: GKD-V Volatility / Volume indicator
Stacked 1: None
Stacked 2+: GKD-C, GKD-V, or GKD-B Stacked 1
Outputs
Confirmation 1: GKD-C Confirmation 2 indicator
Confirmation 2: GKD-C Continuation indicator
Continuation: GKD-E Exit indicator
Solo Confirmation Simple: GKD-BT Backtest
Solo Confirmation Complex: GKD-BT Backtest or GKD-E Exit indicator
Solo Confirmation Super Complex: GKD-C Continuation indicator
Stacked 1: GKD-C, GKD-V, or GKD-B Stacked 2+
Stacked 2+: GKD-C, GKD-V, or GKD-B Stacked 2+ or GKD-BT Backtest
Additional features will be added in future releases.
GKD-C RSX VDI w/ Floating Levels [Loxx]Giga Kaleidoscope GKD-C RSX VDI w/ Floating Levels is a Confirmation module included in Loxx's "Giga Kaleidoscope Modularized Trading System".
█ GKD-C RSX VDI w/ Floating Levels
What is the VDI (Volatility Direction Index)?
The Volatility Direction Index Index (VDI) is a technical analysis indicator developed by Loxx. It is designed to help traders and investors identify potential trend reversals, confirm existing trends, and recognize overbought or oversold market conditions. VDI is a momentum oscillator that measures the volatility and price direction of an asset over a specified period.
Here's a step-by-step breakdown of how to calculate VDI:
Choose a period (n) over which to calculate the VDI, typically 8 or 10.
Calculate the true range for each day:
True Range = max
Calculate the directional bias for each day:
If (Today's High - Previous Close) > (Previous Close - Today's Low), the directional bias is positive.
If (Today's High - Previous Close) < (Previous Close - Today's Low), the directional bias is negative.
Calculate the VDI for each day with a positive directional bias:
VDI Positive = * 100
Calculate the VDI for each day with a negative directional bias:
VDI Negative = * 100
Calculate the n-day sum of positive VDI values (Sum_Positive_VDI) and the n-day sum of negative VDI values (Sum_Negative_VDI).
Calculate the final Volatility Direction Index Index value:
VDI = (Sum_Positive_VDI - Sum_Negative_VDI) / (Sum_Positive_VDI + Sum_Negative_VDI) * 100
This VDI value can then be plotted on a chart over time to help traders and investors visualize the momentum and volatility of the asset's price.
VDI oscillates between -100 and +100. Positive VDI values indicate bullishness, while negative VDI values suggest bearishness. Values near the extremes (+100 or -100) can be considered overbought or oversold, potentially signaling a trend reversal. Traders often use additional technical analysis tools and techniques to confirm signals generated by the VDI.
What is the RSX?
The Jurik RSX is a technical indicator developed by Mark Jurik to measure the momentum and strength of price movements in financial markets, such as stocks, commodities, and currencies. It is an advanced version of the traditional Relative Strength Index (RSI), designed to offer smoother and less lagging signals compared to the standard RSI.
The main advantage of the Jurik RSX is that it provides more accurate and timely signals for traders and analysts, thanks to its improved calculation methods that reduce noise and lag in the indicator's output. This enables better decision-making when analyzing market trends and potential trading opportunities.
What is RSX VDI w/ Confidence Bands
This indicator calculates the RSX VDI and then wraps that calculation with uppper and lower floating levels, similar to Donchian channels. There are three types of signals: Levels cross, dynamic middle cross, and signal cross.
Additional Features
This indicator allows you to select from 33 source types. They are as follows:
Close
Open
High
Low
Median
Typical
Weighted
Average
Average Median Body
Trend Biased
Trend Biased (Extreme)
HA Close
HA Open
HA High
HA Low
HA Median
HA Typical
HA Weighted
HA Average
HA Average Median Body
HA Trend Biased
HA Trend Biased (Extreme)
HAB Close
HAB Open
HAB High
HAB Low
HAB Median
HAB Typical
HAB Weighted
HAB Average
HAB Average Median Body
HAB Trend Biased
HAB Trend Biased (Extreme)
What are Heiken Ashi "better" candles?
Heiken Ashi "better" candles are a modified version of the standard Heiken Ashi candles, which are a popular charting technique used in technical analysis. Heiken Ashi candles help traders identify trends and potential reversal points by smoothing out price data and reducing market noise. The "better formula" was proposed by Sebastian Schmidt in an article published by BNP Paribas in Warrants & Zertifikate, a German magazine, in August 2004. The aim of this formula is to further improve the smoothing of the Heiken Ashi chart and enhance its effectiveness in identifying trends and reversals.
Standard Heiken Ashi candles are calculated using the following formulas:
Heiken Ashi Close = (Open + High + Low + Close) / 4
Heiken Ashi Open = (Previous Heiken Ashi Open + Previous Heiken Ashi Close) / 2
Heiken Ashi High = Max (High, Heiken Ashi Open, Heiken Ashi Close)
Heiken Ashi Low = Min (Low, Heiken Ashi Open, Heiken Ashi Close)
The "better formula" modifies the standard Heiken Ashi calculation by incorporating additional smoothing, which can help reduce noise and make it easier to identify trends and reversals. The modified formulas for Heiken Ashi "better" candles are as follows:
Better Heiken Ashi Close = (Open + High + Low + Close) / 4
Better Heiken Ashi Open = (Previous Better Heiken Ashi Open + Previous Better Heiken Ashi Close) / 2
Better Heiken Ashi High = Max (High, Better Heiken Ashi Open, Better Heiken Ashi Close)
Better Heiken Ashi Low = Min (Low, Better Heiken Ashi Open, Better Heiken Ashi Close)
Smoothing Factor = 2 / (N + 1), where N is the chosen period for smoothing
Smoothed Better Heiken Ashi Open = (Better Heiken Ashi Open * Smoothing Factor) + (Previous Smoothed Better Heiken Ashi Open * (1 - Smoothing Factor))
Smoothed Better Heiken Ashi Close = (Better Heiken Ashi Close * Smoothing Factor) + (Previous Smoothed Better Heiken Ashi Close * (1 - Smoothing Factor))
The smoothed Better Heiken Ashi Open and Close values are then used to calculate the smoothed Better Heiken Ashi High and Low values, resulting in "better" candles that provide a clearer representation of the market trend and potential reversal points.
It's important to note that, like any other technical analysis tool, Heiken Ashi "better" candles are not foolproof and should be used in conjunction with other indicators and analysis techniques to make well-informed trading decisions.
Heiken Ashi "better" candles, as mentioned previously, provide a clearer representation of market trends and potential reversal points by reducing noise and smoothing out price data. When using these candles in conjunction with other technical analysis tools and indicators, traders can gain valuable insights into market behavior and make more informed decisions.
To effectively use Heiken Ashi "better" candles in your trading strategy, consider the following tips:
Trend Identification: Heiken Ashi "better" candles can help you identify the prevailing trend in the market. When the majority of the candles are green (or another color, depending on your chart settings) and there are no or few lower wicks, it may indicate a strong uptrend. Conversely, when the majority of the candles are red (or another color) and there are no or few upper wicks, it may signal a strong downtrend.
Trend Reversals: Look for potential trend reversals when a change in the color of the candles occurs, especially when accompanied by longer wicks. For example, if a green candle with a long lower wick is followed by a red candle, it could indicate a bearish reversal. Similarly, a red candle with a long upper wick followed by a green candle may suggest a bullish reversal.
Support and Resistance: You can use Heiken Ashi "better" candles to identify potential support and resistance levels. When the candles are consistently moving in one direction and then suddenly change color with longer wicks, it could indicate the presence of a support or resistance level.
Stop-Loss and Take-Profit: Using Heiken Ashi "better" candles can help you manage risk by determining optimal stop-loss and take-profit levels. For instance, you can place your stop-loss below the low of the most recent green candle in an uptrend or above the high of the most recent red candle in a downtrend.
Confirming Signals: Heiken Ashi "better" candles should be used in conjunction with other technical indicators, such as moving averages, oscillators, or chart patterns, to confirm signals and improve the accuracy of your analysis.
In this implementation, you have the choice of AMA, KAMA, or T3 smoothing. These are as follows:
Kaufman Adaptive Moving Average (KAMA)
The Kaufman Adaptive Moving Average (KAMA) is a type of adaptive moving average used in technical analysis to smooth out price fluctuations and identify trends. The KAMA adjusts its smoothing factor based on the market's volatility, making it more responsive in volatile markets and smoother in calm markets. The KAMA is calculated using three different efficiency ratios that determine the appropriate smoothing factor for the current market conditions. These ratios are based on the noise level of the market, the speed at which the market is moving, and the length of the moving average. The KAMA is a popular choice among traders who prefer to use adaptive indicators to identify trends and potential reversals.
Adaptive Moving Average
The Adaptive Moving Average (AMA) is a type of moving average that adjusts its sensitivity to price movements based on market conditions. It uses a ratio between the current price and the highest and lowest prices over a certain lookback period to determine its level of smoothing. The AMA can help reduce lag and increase responsiveness to changes in trend direction, making it useful for traders who want to follow trends while avoiding false signals. The AMA is calculated by multiplying a smoothing constant with the difference between the current price and the previous AMA value, then adding the result to the previous AMA value.
T3
The T3 moving average is a type of technical indicator used in financial analysis to identify trends in price movements. It is similar to the Exponential Moving Average (EMA) and the Double Exponential Moving Average (DEMA), but uses a different smoothing algorithm.
The T3 moving average is calculated using a series of exponential moving averages that are designed to filter out noise and smooth the data. The resulting smoothed data is then weighted with a non-linear function to produce a final output that is more responsive to changes in trend direction.
The T3 moving average can be customized by adjusting the length of the moving average, as well as the weighting function used to smooth the data. It is commonly used in conjunction with other technical indicators as part of a larger trading strategy.
█ Giga Kaleidoscope Modularized Trading System
Core components of an NNFX algorithmic trading strategy
The NNFX algorithm is built on the principles of trend, momentum, and volatility. There are six core components in the NNFX trading algorithm:
1. Volatility - price volatility; e.g., Average True Range, True Range Double, Close-to-Close, etc.
2. Baseline - a moving average to identify price trend
3. Confirmation 1 - a technical indicator used to identify trends
4. Confirmation 2 - a technical indicator used to identify trends
5. Continuation - a technical indicator used to identify trends
6. Volatility/Volume - a technical indicator used to identify volatility/volume breakouts/breakdown
7. Exit - a technical indicator used to determine when a trend is exhausted
What is Volatility in the NNFX trading system?
In the NNFX (No Nonsense Forex) trading system, ATR (Average True Range) is typically used to measure the volatility of an asset. It is used as a part of the system to help determine the appropriate stop loss and take profit levels for a trade. ATR is calculated by taking the average of the true range values over a specified period.
True range is calculated as the maximum of the following values:
-Current high minus the current low
-Absolute value of the current high minus the previous close
-Absolute value of the current low minus the previous close
ATR is a dynamic indicator that changes with changes in volatility. As volatility increases, the value of ATR increases, and as volatility decreases, the value of ATR decreases. By using ATR in NNFX system, traders can adjust their stop loss and take profit levels according to the volatility of the asset being traded. This helps to ensure that the trade is given enough room to move, while also minimizing potential losses.
Other types of volatility include True Range Double (TRD), Close-to-Close, and Garman-Klass
What is a Baseline indicator?
The baseline is essentially a moving average, and is used to determine the overall direction of the market.
The baseline in the NNFX system is used to filter out trades that are not in line with the long-term trend of the market. The baseline is plotted on the chart along with other indicators, such as the Moving Average (MA), the Relative Strength Index (RSI), and the Average True Range (ATR).
Trades are only taken when the price is in the same direction as the baseline. For example, if the baseline is sloping upwards, only long trades are taken, and if the baseline is sloping downwards, only short trades are taken. This approach helps to ensure that trades are in line with the overall trend of the market, and reduces the risk of entering trades that are likely to fail.
By using a baseline in the NNFX system, traders can have a clear reference point for determining the overall trend of the market, and can make more informed trading decisions. The baseline helps to filter out noise and false signals, and ensures that trades are taken in the direction of the long-term trend.
What is a Confirmation indicator?
Confirmation indicators are technical indicators that are used to confirm the signals generated by primary indicators. Primary indicators are the core indicators used in the NNFX system, such as the Average True Range (ATR), the Moving Average (MA), and the Relative Strength Index (RSI).
The purpose of the confirmation indicators is to reduce false signals and improve the accuracy of the trading system. They are designed to confirm the signals generated by the primary indicators by providing additional information about the strength and direction of the trend.
Some examples of confirmation indicators that may be used in the NNFX system include the Bollinger Bands, the MACD (Moving Average Convergence Divergence), and the MACD Oscillator. These indicators can provide information about the volatility, momentum, and trend strength of the market, and can be used to confirm the signals generated by the primary indicators.
In the NNFX system, confirmation indicators are used in combination with primary indicators and other filters to create a trading system that is robust and reliable. By using multiple indicators to confirm trading signals, the system aims to reduce the risk of false signals and improve the overall profitability of the trades.
What is a Continuation indicator?
In the NNFX (No Nonsense Forex) trading system, a continuation indicator is a technical indicator that is used to confirm a current trend and predict that the trend is likely to continue in the same direction. A continuation indicator is typically used in conjunction with other indicators in the system, such as a baseline indicator, to provide a comprehensive trading strategy.
What is a Volatility/Volume indicator?
Volume indicators, such as the On Balance Volume (OBV), the Chaikin Money Flow (CMF), or the Volume Price Trend (VPT), are used to measure the amount of buying and selling activity in a market. They are based on the trading volume of the market, and can provide information about the strength of the trend. In the NNFX system, volume indicators are used to confirm trading signals generated by the Moving Average and the Relative Strength Index. Volatility indicators include Average Direction Index, Waddah Attar, and Volatility Ratio. In the NNFX trading system, volatility is a proxy for volume and vice versa.
By using volume indicators as confirmation tools, the NNFX trading system aims to reduce the risk of false signals and improve the overall profitability of trades. These indicators can provide additional information about the market that is not captured by the primary indicators, and can help traders to make more informed trading decisions. In addition, volume indicators can be used to identify potential changes in market trends and to confirm the strength of price movements.
What is an Exit indicator?
The exit indicator is used in conjunction with other indicators in the system, such as the Moving Average (MA), the Relative Strength Index (RSI), and the Average True Range (ATR), to provide a comprehensive trading strategy.
The exit indicator in the NNFX system can be any technical indicator that is deemed effective at identifying optimal exit points. Examples of exit indicators that are commonly used include the Parabolic SAR, the Average Directional Index (ADX), and the Chandelier Exit.
The purpose of the exit indicator is to identify when a trend is likely to reverse or when the market conditions have changed, signaling the need to exit a trade. By using an exit indicator, traders can manage their risk and prevent significant losses.
In the NNFX system, the exit indicator is used in conjunction with a stop loss and a take profit order to maximize profits and minimize losses. The stop loss order is used to limit the amount of loss that can be incurred if the trade goes against the trader, while the take profit order is used to lock in profits when the trade is moving in the trader's favor.
Overall, the use of an exit indicator in the NNFX trading system is an important component of a comprehensive trading strategy. It allows traders to manage their risk effectively and improve the profitability of their trades by exiting at the right time.
How does Loxx's GKD (Giga Kaleidoscope Modularized Trading System) implement the NNFX algorithm outlined above?
Loxx's GKD v1.0 system has five types of modules (indicators/strategies). These modules are:
1. GKD-BT - Backtesting module (Volatility, Number 1 in the NNFX algorithm)
2. GKD-B - Baseline module (Baseline and Volatility/Volume, Numbers 1 and 2 in the NNFX algorithm)
3. GKD-C - Confirmation 1/2 and Continuation module (Confirmation 1/2 and Continuation, Numbers 3, 4, and 5 in the NNFX algorithm)
4. GKD-V - Volatility/Volume module (Confirmation 1/2, Number 6 in the NNFX algorithm)
5. GKD-E - Exit module (Exit, Number 7 in the NNFX algorithm)
(additional module types will added in future releases)
Each module interacts with every module by passing data between modules. Data is passed between each module as described below:
GKD-B => GKD-V => GKD-C(1) => GKD-C(2) => GKD-C(Continuation) => GKD-E => GKD-BT
That is, the Baseline indicator passes its data to Volatility/Volume. The Volatility/Volume indicator passes its values to the Confirmation 1 indicator. The Confirmation 1 indicator passes its values to the Confirmation 2 indicator. The Confirmation 2 indicator passes its values to the Continuation indicator. The Continuation indicator passes its values to the Exit indicator, and finally, the Exit indicator passes its values to the Backtest strategy.
This chaining of indicators requires that each module conform to Loxx's GKD protocol, therefore allowing for the testing of every possible combination of technical indicators that make up the six components of the NNFX algorithm.
What does the application of the GKD trading system look like?
Example trading system:
Backtest: Strategy with 1-3 take profits, trailing stop loss, multiple types of PnL volatility, and 2 backtesting styles
Baseline: Hull Moving Average
Volatility/Volume: Hurst Exponent
Confirmation 1: RSX VDI w/ Floating Levels as shown on the chart above
Confirmation 2: Williams Percent Range
Continuation: Fisher Transform
Exit: Rex Oscillator
Each GKD indicator is denoted with a module identifier of either: GKD-BT, GKD-B, GKD-C, GKD-V, or GKD-E. This allows traders to understand to which module each indicator belongs and where each indicator fits into the GKD protocol chain.
Giga Kaleidoscope Modularized Trading System Signals (based on the NNFX algorithm)
Standard Entry
1. GKD-C Confirmation 1 Signal
2. GKD-B Baseline agrees
3. Price is within a range of 0.2x Volatility and 1.0x Volatility of the Goldie Locks Mean
4. GKD-C Confirmation 2 agrees
5. GKD-V Volatility/Volume agrees
Baseline Entry
1. GKD-B Baseline signal
2. GKD-C Confirmation 1 agrees
3. Price is within a range of 0.2x Volatility and 1.0x Volatility of the Goldie Locks Mean
4. GKD-C Confirmation 2 agrees
5. GKD-V Volatility/Volume agrees
6. GKD-C Confirmation 1 signal was less than 7 candles prior
Volatility/Volume Entry
1. GKD-V Volatility/Volume signal
2. GKD-C Confirmation 1 agrees
3. Price is within a range of 0.2x Volatility and 1.0x Volatility of the Goldie Locks Mean
4. GKD-C Confirmation 2 agrees
5. GKD-B Baseline agrees
6. GKD-C Confirmation 1 signal was less than 7 candles prior
Continuation Entry
1. Standard Entry, Baseline Entry, or Pullback; entry triggered previously
2. GKD-B Baseline hasn't crossed since entry signal trigger
3. GKD-C Confirmation Continuation Indicator signals
4. GKD-C Confirmation 1 agrees
5. GKD-B Baseline agrees
6. GKD-C Confirmation 2 agrees
1-Candle Rule Standard Entry
1. GKD-C Confirmation 1 signal
2. GKD-B Baseline agrees
3. Price is within a range of 0.2x Volatility and 1.0x Volatility of the Goldie Locks Mean
Next Candle:
1. Price retraced (Long: close < close or Short: close > close )
2. GKD-B Baseline agrees
3. GKD-C Confirmation 1 agrees
4. GKD-C Confirmation 2 agrees
5. GKD-V Volatility/Volume agrees
1-Candle Rule Baseline Entry
1. GKD-B Baseline signal
2. GKD-C Confirmation 1 agrees
3. Price is within a range of 0.2x Volatility and 1.0x Volatility of the Goldie Locks Mean
4. GKD-C Confirmation 1 signal was less than 7 candles prior
Next Candle:
1. Price retraced (Long: close < close or Short: close > close )
2. GKD-B Baseline agrees
3. GKD-C Confirmation 1 agrees
4. GKD-C Confirmation 2 agrees
5. GKD-V Volatility/Volume Agrees
1-Candle Rule Volatility/Volume Entry
1. GKD-V Volatility/Volume signal
2. GKD-C Confirmation 1 agrees
3. Price is within a range of 0.2x Volatility and 1.0x Volatility of the Goldie Locks Mean
4. GKD-C Confirmation 1 signal was less than 7 candles prior
Next Candle:
1. Price retraced (Long: close < close or Short: close > close)
2. GKD-B Volatility/Volume agrees
3. GKD-C Confirmation 1 agrees
4. GKD-C Confirmation 2 agrees
5. GKD-B Baseline agrees
PullBack Entry
1. GKD-B Baseline signal
2. GKD-C Confirmation 1 agrees
3. Price is beyond 1.0x Volatility of Baseline
Next Candle:
1. Price is within a range of 0.2x Volatility and 1.0x Volatility of the Goldie Locks Mean
2. GKD-C Confirmation 1 agrees
3. GKD-C Confirmation 2 agrees
4. GKD-V Volatility/Volume Agrees
]█ Setting up the GKD
The GKD system involves chaining indicators together. These are the steps to set this up.
Use a GKD-C indicator alone on a chart
1. Inside the GKD-C indicator, change the "Confirmation Type" setting to "Solo Confirmation Simple"
Use a GKD-V indicator alone on a chart
**nothing, it's already useable on the chart without any settings changes
Use a GKD-B indicator alone on a chart
**nothing, it's already useable on the chart without any settings changes
Baseline (Baseline, Backtest)
1. Import the GKD-B Baseline into the GKD-BT Backtest: "Input into Volatility/Volume or Backtest (Baseline testing)"
2. Inside the GKD-BT Backtest, change the setting "Backtest Special" to "Baseline"
Volatility/Volume (Volatility/Volume, Backte st)
1. Inside the GKD-V indicator, change the "Testing Type" setting to "Solo"
2. Inside the GKD-V indicator, change the "Signal Type" setting to "Crossing" (neither traditional nor both can be backtested)
3. Import the GKD-V indicator into the GKD-BT Backtest: "Input into C1 or Backtest"
4. Inside the GKD-BT Backtest, change the setting "Backtest Special" to "Volatility/Volume"
5. Inside the GKD-BT Backtest, a) change the setting "Backtest Type" to "Trading" if using a directional GKD-V indicator; or, b) change the setting "Backtest Type" to "Full" if using a directional or non-directional GKD-V indicator (non-directional GKD-V can only test Longs and Shorts separately)
6. If "Backtest Type" is set to "Full": Inside the GKD-BT Backtest, change the setting "Backtest Side" to "Long" or "Short
7. If "Backtest Type" is set to "Full": To allow the system to open multiple orders at one time so you test all Longs or Shorts, open the GKD-BT Backtest, click the tab "Properties" and then insert a value of something like 10 orders into the "Pyramiding" settings. This will allow 10 orders to be opened at one time which should be enough to catch all possible Longs or Shorts.
Solo Confirmation Simple (Confirmation, Backtest)
1. Inside the GKD-C indicator, change the "Confirmation Type" setting to "Solo Confirmation Simple"
1. Import the GKD-C indicator into the GKD-BT Backtest: "Input into Backtest"
2. Inside the GKD-BT Backtest, change the setting "Backtest Special" to "Solo Confirmation Simple"
Solo Confirmation Complex without Exits (Baseline, Volatility/Volume, Confirmation, Backtest)
1. Inside the GKD-V indicator, change the "Testing Type" setting to "Chained"
2. Import the GKD-B Baseline into the GKD-V indicator: "Input into Volatility/Volume or Backtest (Baseline testing)"
3. Inside the GKD-C indicator, change the "Confirmation Type" setting to "Solo Confirmation Complex"
4. Import the GKD-V indicator into the GKD-C indicator: "Input into C1 or Backtest"
5. Inside the GKD-BT Backtest, change the setting "Backtest Special" to "GKD Full wo/ Exits"
6. Import the GKD-C into the GKD-BT Backtest: "Input into Exit or Backtest"
Solo Confirmation Complex with Exits (Baseline, Volatility/Volume, Confirmation, Exit, Backtest)
1. Inside the GKD-V indicator, change the "Testing Type" setting to "Chained"
2. Import the GKD-B Baseline into the GKD-V indicator: "Input into Volatility/Volume or Backtest (Baseline testing)"
3. Inside the GKD-C indicator, change the "Confirmation Type" setting to "Solo Confirmation Complex"
4. Import the GKD-V indicator into the GKD-C indicator: "Input into C1 or Backtest"
5. Import the GKD-C indicator into the GKD-E indicator: "Input into Exit"
6. Inside the GKD-BT Backtest, change the setting "Backtest Special" to "GKD Full w/ Exits"
7. Import the GKD-E into the GKD-BT Backtest: "Input into Backtest"
Full GKD without Exits (Baseline, Volatility/Volume, Confirmation 1, Confirmation 2, Continuation, Backtest)
1. Inside the GKD-V indicator, change the "Testing Type" setting to "Chained"
2. Import the GKD-B Baseline into the GKD-V indicator: "Input into Volatility/Volume or Backtest (Baseline testing)"
3. Inside the GKD-C 1 indicator, change the "Confirmation Type" setting to "Confirmation 1"
4. Import the GKD-V indicator into the GKD-C 1 indicator: "Input into C1 or Backtest"
5. Inside the GKD-C 2 indicator, change the "Confirmation Type" setting to "Confirmation 2"
6. Import the GKD-C 1 indicator into the GKD-C 2 indicator: "Input into C2"
7. Inside the GKD-C Continuation indicator, change the "Confirmation Type" setting to "Continuation"
8. Inside the GKD-BT Backtest, change the setting "Backtest Special" to "GKD Full wo/ Exits"
9. Import the GKD-E into the GKD-BT Backtest: "Input into Exit or Backtest"
Full GKD with Exits (Baseline, Volatility/Volume, Confirmation 1, Confirmation 2, Continuation, Exit, Backtest)
1. Inside the GKD-V indicator, change the "Testing Type" setting to "Chained"
2. Import the GKD-B Baseline into the GKD-V indicator: "Input into Volatility/Volume or Backtest (Baseline testing)"
3. Inside the GKD-C 1 indicator, change the "Confirmation Type" setting to "Confirmation 1"
4. Import the GKD-V indicator into the GKD-C 1 indicator: "Input into C1 or Backtest"
5. Inside the GKD-C 2 indicator, change the "Confirmation Type" setting to "Confirmation 2"
6. Import the GKD-C 1 indicator into the GKD-C 2 indicator: "Input into C2"
7. Inside the GKD-C Continuation indicator, change the "Confirmation Type" setting to "Continuation"
8. Import the GKD-C Continuation indicator into the GKD-E indicator: "Input into Exit"
9. Inside the GKD-BT Backtest, change the setting "Backtest Special" to "GKD Full w/ Exits"
10. Import the GKD-E into the GKD-BT Backtest: "Input into Backtest"
Baseline + Volatility/Volume (Baseline, Volatility/Volume, Backtest)
1. Inside the GKD-V indicator, change the "Testing Type" setting to "Baseline + Volatility/Volume"
2. Inside the GKD-V indicator, make sure the "Signal Type" setting is set to "Traditional"
3. Import the GKD-B Baseline into the GKD-V indicator: "Input into Volatility/Volume or Backtest (Baseline testing)"
4. Inside the GKD-BT Backtest, change the setting "Backtest Special" to "Baseline + Volatility/Volume"
5. Import the GKD-V into the GKD-BT Backtest: "Input into C1 or Backtest"
6. Inside the GKD-BT Backtest, change the setting "Backtest Type" to "Full". For this backtest, you must test Longs and Shorts separately
7. To allow the system to open multiple orders at one time so you can test all Longs or Shorts, open the GKD-BT Backtest, click the tab "Properties" and then insert a value of something like 10 orders into the "Pyramiding" settings. This will allow 10 orders to be opened at one time which should be enough to catch all possible Longs or Shorts.
Requirements
Inputs
Confirmation 1: GKD-V Volatility / Volume indicator
Confirmation 2: GKD-C Confirmation indicator
Continuation: GKD-C Confirmation indicator
Solo Confirmation Simple: GKD-B Baseline
Solo Confirmation Complex: GKD-V Volatility / Volume indicator
Solo Confirmation Super Complex: GKD-V Volatility / Volume indicator
Stacked 1: None
Stacked 2+: GKD-C, GKD-V, or GKD-B Stacked 1
Outputs
Confirmation 1: GKD-C Confirmation 2 indicator
Confirmation 2: GKD-C Continuation indicator
Continuation: GKD-E Exit indicator
Solo Confirmation Simple: GKD-BT Backtest
Solo Confirmation Complex: GKD-BT Backtest or GKD-E Exit indicator
Solo Confirmation Super Complex: GKD-C Continuation indicator
Stacked 1: GKD-C, GKD-V, or GKD-B Stacked 2+
Stacked 2+: GKD-C, GKD-V, or GKD-B Stacked 2+ or GKD-BT Backtest
Additional features will be added in future releases.
Wavemeter [theEccentricTrader]█ OVERVIEW
This indicator is a representation of my take on price action based wave cycle theory. The indicator counts the number of confirmed wave cycles, keeps a rolling tally of the average wave length, wave height and frequency, and displays the statistics in a table. The indicator also displays the current wave measurements as an optional feature.
█ CONCEPTS
Green and Red Candles
• A green candle is one that closes with a high price equal to or above the price it opened.
• A red candle is one that closes with a low price that is lower than the price it opened.
Swing Highs and Swing Lows
• A swing high is a green candle or series of consecutive green candles followed by a single red candle to complete the swing and form the peak.
• A swing low is a red candle or series of consecutive red candles followed by a single green candle to complete the swing and form the trough.
Peak and Trough Prices (Basic)
• The peak price of a complete swing high is the high price of either the red candle that completes the swing high or the high price of the preceding green candle, depending on which is higher.
• The trough price of a complete swing low is the low price of either the green candle that completes the swing low or the low price of the preceding red candle, depending on which is lower.
Historic Peaks and Troughs
The current, or most recent, peak and trough occurrences are referred to as occurrence zero. Previous peak and trough occurrences are referred to as historic and ordered numerically from right to left, with the most recent historic peak and trough occurrences being occurrence one.
Wave Cycles
A wave cycle is here defined as a complete two-part move between a swing high and a swing low, or a swing low and a swing high. As can be seen in the example above, the first swing high or swing low will set the course for the sequence of wave cycles that follow; a chart that begins with a swing low will form its first complete wave cycle upon the formation of the first complete swing high and vice versa.
Wave Length
Wave length is here measured in terms of bar distance between the start and end of a wave cycle. For example, if the current wave cycle ends on a swing low the wave length will be the difference in bars between the current swing low and current swing high. In such a case, if the current swing low completes on candle 100 and the current swing high completed on candle 95, we would simply subtract 95 from 100 to give us a wave length of 5 bars.
Average wave length is here measured in terms of total bars as a proportion as total waves. The average wavelength is calculated by dividing the total candles by the total wave cycles.
Wave Height
Wave height is here measured in terms of current range. For example, if the current peak price is 100 and the current trough price is 80, the wave height will be 20.
Amplitude
Amplitude is here measured in terms of current range divided by two. For example if the current peak price is 100 and the current trough price is 80, the amplitude would be calculated by subtracting 80 from 100 and dividing the answer by 2 to give us an amplitude of 10.
Frequency
Frequency is here measured in terms of wave cycles per second (Hertz). For example, if the total wave cycle count is 10 and the amount of time it has taken to complete these 10 cycles is 1-year (31,536,000 seconds), the frequency would be calculated by dividing 10 by 31,536,000 to give us a frequency of 0.00000032 Hz.
Range
The range is simply the difference between the current peak and current trough prices, generally expressed in terms of points or pips.
█ FEATURES
Inputs
Show Sample Period
Start Date
End Date
Position
Text Size
Show Current
Show Lines
Table
The table is colour coded, consists of two columns and, as many as, nine rows. Blue cells display the total wave cycle count and average wave measurements. Green cells display the current wave measurements. And the final row in column one, coloured black, displays the sample period. Both current wave measurements and sample period cells can be hidden at the user’s discretion.
Lines
For a visual aid to the wave cycles, I have added a blue line that traces out the waves on the chart. These lines can be hidden at the user’s discretion.
█ HOW TO USE
The indicator is intended for research purposes, strategy development and strategy optimisation. I hope it will be useful in helping to gain a better understanding of the underlying dynamics at play on any given market and timeframe.
For example, the indicator can be used to compare the current range and frequency with the average range and frequency, which can be useful for gauging current market conditions versus historic and getting a feel for how different markets and timeframes behave.
█ LIMITATIONS
Some higher timeframe candles on tickers with larger lookbacks such as the DXY , do not actually contain all the open, high, low and close (OHLC) data at the beginning of the chart. Instead, they use the close price for open, high and low prices. So, while we can determine whether the close price is higher or lower than the preceding close price, there is no way of knowing what actually happened intra-bar for these candles. And by default candles that close at the same price as the open price, will be counted as green. You can avoid this problem by utilising the sample period filter.
The green and red candle calculations are based solely on differences between open and close prices, as such I have made no attempt to account for green candles that gap lower and close below the close price of the preceding candle, or red candles that gap higher and close above the close price of the preceding candle. I can only recommend using 24-hour markets, if and where possible, as there are far fewer gaps and, generally, more data to work with. Alternatively, you can replace the scenarios with your own logic to account for the gap anomalies, if you are feeling up to the challenge.
It is also worth noting that the sample size will be limited to your Trading View subscription plan. Premium users get 20,000 candles worth of data, pro+ and pro users get 10,000, and basic users get 5,000. If upgrading is currently not an option, you can always keep a rolling tally of the statistics in an excel spreadsheet or something of the like.
Candle Counter [theEccentricTrader]█ OVERVIEW
This indicator counts the number of confirmed candle scenarios on any given candlestick chart and displays the statistics in a table, which can be repositioned and resized at the user's discretion.
█ CONCEPTS
Green and Red Candles
A green candle is one that closes with a high price equal to or above the price it opened.
A red candle is one that closes with a low price that is lower than the price it opened.
Upper Candle Trends
A higher high candle is one that closes with a higher high price than the high price of the preceding candle.
A lower high candle is one that closes with a lower high price than the high price of the preceding candle.
A double-top candle is one that closes with a high price that is equal to the high price of the preceding candle.
Lower Candle Trends
A higher low candle is one that closes with a higher low price than the low price of the preceding candle.
A lower low candle is one that closes with a lower low price than the low price of the preceding candle.
A double-bottom candle is one that closes with a low price that is equal to the low price of the preceding candle.
█ FEATURES
Inputs
Start Date
End Date
Position
Text Size
Show Sample Period
Show Plots
Table
The table is colour coded, consists of three columns and twenty-two rows. Blue cells denote all candle scenarios, green cells denote green candle scenarios and red cells denote red candle scenarios.
The candle scenarios are listed in the first column with their corresponding total counts to the right, in the second column. The last row in column one, row twenty-two, displays the sample period which can be adjusted or hidden via indicator settings.
Rows two and three in the third column of the table display the total green and red candles as percentages of total candles. Rows four to nine in column three, coloured blue, display the corresponding candle scenarios as percentages of total candles. Rows ten to fifteen in column three, coloured green, display the corresponding candle scenarios as percentages of total green candles. And lastly, rows sixteen to twenty-one in column three, coloured red, display the corresponding candle scenarios as percentages of total red candles.
Plots
I have added plots as a visual aid to the various candle scenarios listed in the table. Green up-arrows denote higher high candles when above bar and higher low candles when below bar. Red down-arrows denote lower high candles when above bar and lower low candles when below bar. Similarly, blue diamonds when above bar denote double-top candles and when below bar denote double-bottom candles. These plots can also be hidden via indicator settings.
█ HOW TO USE
This indicator is intended for research purposes and strategy development. I hope it will be useful in helping to gain a better understanding of the underlying dynamics at play on any given market and timeframe. It can, for example, give you an idea of any inherent biases such as a greater proportion of green candles to red. Or a greater proportion of higher low green candles to lower low green candles. Such information can be very useful when conducting top down analysis across multiple timeframes, or considering trailing stop loss methods.
What you do with these statistics and how far you decide to take your research is entirely up to you, the possibilities are endless.
This is just the first and most basic in a series of indicators that can be used to study objective price action scenarios and develop a systematic approach to trading.
█ LIMITATIONS
Some higher timeframe candles on tickers with larger lookbacks such as the DXY, do not actually contain all the open, high, low and close (OHLC) data at the beginning of the chart. Instead, they use the close price for open, high and low prices. So, while we can determine whether the close price is higher or lower than the preceding close price, there is no way of knowing what actually happened intra-bar for these candles. And by default candles that close at the same price as the open price, will be counted as green. You can avoid this problem by utilising the sample period filter.
The green and red candle calculations are based solely on differences between open and close prices, as such I have made no attempt to account for green candles that gap lower and close below the close price of the preceding candle, or red candles that gap higher and close above the close price of the preceding candle. I can only recommend using 24-hour markets, if and where possible, as there are far fewer gaps and, generally, more data to work with. Alternatively, you can replace the scenarios with your own logic to account for the gap anomalies, if you are feeling up to the challenge.
It is also worth noting that the sample size will be limited to your Trading View subscription plan. Premium users get 20,000 candles worth of data, pro+ and pro users get 10,000, and basic users get 5,000. If upgrading is currently not an option, you can always keep a rolling tally of the statistics in an excel spreadsheet or something of the like.
MomentumIndicatorsLibrary "MomentumIndicators"
This is a library of 'Momentum Indicators', also denominated as oscillators.
The purpose of this library is to organize momentum indicators in just one place, making it easy to access.
In addition, it aims to allow customized versions, not being restricted to just the price value.
An example of this use case is the popular Stochastic RSI.
# Indicators:
1. Relative Strength Index (RSI):
Measures the relative strength of recent price gains to recent price losses of an asset.
2. Rate of Change (ROC):
Measures the percentage change in price of an asset over a specified time period.
3. Stochastic Oscillator (Stoch):
Compares the current price of an asset to its price range over a specified time period.
4. True Strength Index (TSI):
Measures the price change, calculating the ratio of the price change (positive or negative) in relation to the
absolute price change.
The values of both are smoothed twice to reduce noise, and the final result is normalized
in a range between 100 and -100.
5. Stochastic Momentum Index (SMI):
Combination of the True Strength Index with a signal line to help identify turning points in the market.
6. Williams Percent Range (Williams %R):
Compares the current price of an asset to its highest high and lowest low over a specified time period.
7. Commodity Channel Index (CCI):
Measures the relationship between an asset's current price and its moving average.
8. Ultimate Oscillator (UO):
Combines three different time periods to help identify possible reversal points.
9. Moving Average Convergence/Divergence (MACD):
Shows the difference between short-term and long-term exponential moving averages.
10. Fisher Transform (FT):
Normalize prices into a Gaussian normal distribution.
11. Inverse Fisher Transform (IFT):
Transform the values of the Fisher Transform into a smaller and more easily interpretable scale is through the
application of an inverse transformation to the hyperbolic tangent function.
This transformation takes the values of the FT, which range from -infinity to +infinity, to a scale limited
between -1 and +1, allowing them to be more easily visualized and compared.
12. Premier Stochastic Oscillator (PSO):
Normalizes the standard stochastic oscillator by applying a five-period double exponential smoothing average of
the %K value, resulting in a symmetric scale of 1 to -1
# Indicators of indicators:
## Stochastic:
1. Stochastic of RSI (Relative Strengh Index)
2. Stochastic of ROC (Rate of Change)
3. Stochastic of UO (Ultimate Oscillator)
4. Stochastic of TSI (True Strengh Index)
5. Stochastic of Williams R%
6. Stochastic of CCI (Commodity Channel Index).
7. Stochastic of MACD (Moving Average Convergence/Divergence)
8. Stochastic of FT (Fisher Transform)
9. Stochastic of Volume
10. Stochastic of MFI (Money Flow Index)
11. Stochastic of On OBV (Balance Volume)
12. Stochastic of PVI (Positive Volume Index)
13. Stochastic of NVI (Negative Volume Index)
14. Stochastic of PVT (Price-Volume Trend)
15. Stochastic of VO (Volume Oscillator)
16. Stochastic of VROC (Volume Rate of Change)
## Inverse Fisher Transform:
1.Inverse Fisher Transform on RSI (Relative Strengh Index)
2.Inverse Fisher Transform on ROC (Rate of Change)
3.Inverse Fisher Transform on UO (Ultimate Oscillator)
4.Inverse Fisher Transform on Stochastic
5.Inverse Fisher Transform on TSI (True Strength Index)
6.Inverse Fisher Transform on CCI (Commodity Channel Index)
7.Inverse Fisher Transform on Fisher Transform (FT)
8.Inverse Fisher Transform on MACD (Moving Average Convergence/Divergence)
9.Inverse Fisher Transfor on Williams R% (Williams Percent Range)
10.Inverse Fisher Transfor on CMF (Chaikin Money Flow)
11.Inverse Fisher Transform on VO (Volume Oscillator)
12.Inverse Fisher Transform on VROC (Volume Rate of Change)
## Stochastic Momentum Index:
1.Stochastic Momentum Index of RSI (Relative Strength Index)
2.Stochastic Momentum Index of ROC (Rate of Change)
3.Stochastic Momentum Index of VROC (Volume Rate of Change)
4.Stochastic Momentum Index of Williams R% (Williams Percent Range)
5.Stochastic Momentum Index of FT (Fisher Transform)
6.Stochastic Momentum Index of CCI (Commodity Channel Index)
7.Stochastic Momentum Index of UO (Ultimate Oscillator)
8.Stochastic Momentum Index of MACD (Moving Average Convergence/Divergence)
9.Stochastic Momentum Index of Volume
10.Stochastic Momentum Index of MFI (Money Flow Index)
11.Stochastic Momentum Index of CMF (Chaikin Money Flow)
12.Stochastic Momentum Index of On Balance Volume (OBV)
13.Stochastic Momentum Index of Price-Volume Trend (PVT)
14.Stochastic Momentum Index of Volume Oscillator (VO)
15.Stochastic Momentum Index of Positive Volume Index (PVI)
16.Stochastic Momentum Index of Negative Volume Index (NVI)
## Relative Strength Index:
1. RSI for Volume
2. RSI for Moving Average
rsi(source, length)
RSI (Relative Strengh Index). Measures the relative strength of recent price gains to recent price losses of an asset.
Parameters:
source : (float) Source of series (close, high, low, etc.)
length : (int) Period of loopback
Returns: (float) Series of RSI
roc(source, length)
ROC (Rate of Change). Measures the percentage change in price of an asset over a specified time period.
Parameters:
source : (float) Source of series (close, high, low, etc.)
length : (int) Period of loopback
Returns: (float) Series of ROC
stoch(kLength, kSmoothing, dSmoothing, maTypeK, maTypeD, almaOffsetKD, almaSigmaKD, lsmaOffSetKD)
Stochastic Oscillator. Compares the current price of an asset to its price range over a specified time period.
Parameters:
kLength
kSmoothing : (int) Period for smoothig stochastic
dSmoothing : (int) Period for signal (moving average of stochastic)
maTypeK : (int) Type of Moving Average for Stochastic Oscillator
maTypeD : (int) Type of Moving Average for Stochastic Oscillator Signal
almaOffsetKD : (float) Offset for Arnaud Legoux Moving Average for Oscillator and Signal
almaSigmaKD : (float) Sigma for Arnaud Legoux Moving Average for Oscillator and Signal
lsmaOffSetKD : (int) Offset for Least Squares Moving Average for Oscillator and Signal
Returns: A tuple of Stochastic Oscillator and Moving Average of Stochastic Oscillator
stoch(source, kLength, kSmoothing, dSmoothing, maTypeK, maTypeD, almaOffsetKD, almaSigmaKD, lsmaOffSetKD)
Stochastic Oscillator. Customized source. Compares the current price of an asset to its price range over a specified time period.
Parameters:
source : (float) Source of series (close, high, low, etc.)
kLength : (int) Period of loopback to calculate the stochastic
kSmoothing : (int) Period for smoothig stochastic
dSmoothing : (int) Period for signal (moving average of stochastic)
maTypeK : (int) Type of Moving Average for Stochastic Oscillator
maTypeD : (int) Type of Moving Average for Stochastic Oscillator Signal
almaOffsetKD : (float) Offset for Arnaud Legoux Moving Average for Stoch and Signal
almaSigmaKD : (float) Sigma for Arnaud Legoux Moving Average for Stoch and Signal
lsmaOffSetKD : (int) Offset for Least Squares Moving Average for Stoch and Signal
Returns: A tuple of Stochastic Oscillator and Moving Average of Stochastic Oscillator
tsi(source, shortLength, longLength, maType, almaOffset, almaSigma, lsmaOffSet)
TSI (True Strengh Index). Measures the price change, calculating the ratio of the price change (positive or negative) in relation to the absolute price change.
The values of both are smoothed twice to reduce noise, and the final result is normalized in a range between 100 and -100.
Parameters:
source : (float) Source of series (close, high, low, etc.)
shortLength : (int) Short length
longLength : (int) Long length
maType : (int) Type of Moving Average for TSI
almaOffset : (float) Offset for Arnaud Legoux Moving Average
almaSigma : (float) Sigma for Arnaud Legoux Moving Average
lsmaOffSet : (int) Offset for Least Squares Moving Average
Returns: (float) TSI
smi(sourceTSI, shortLengthTSI, longLengthTSI, maTypeTSI, almaOffsetTSI, almaSigmaTSI, lsmaOffSetTSI, maTypeSignal, smoothingLengthSignal, almaOffsetSignal, almaSigmaSignal, lsmaOffSetSignal)
SMI (Stochastic Momentum Index). A TSI (True Strengh Index) plus a signal line.
Parameters:
sourceTSI : (float) Source of series for TSI (close, high, low, etc.)
shortLengthTSI : (int) Short length for TSI
longLengthTSI : (int) Long length for TSI
maTypeTSI : (int) Type of Moving Average for Signal of TSI
almaOffsetTSI : (float) Offset for Arnaud Legoux Moving Average
almaSigmaTSI : (float) Sigma for Arnaud Legoux Moving Average
lsmaOffSetTSI : (int) Offset for Least Squares Moving Average
maTypeSignal
smoothingLengthSignal
almaOffsetSignal
almaSigmaSignal
lsmaOffSetSignal
Returns: A tuple with TSI, signal of TSI and histogram of difference
wpr(source, length)
Williams R% (Williams Percent Range). Compares the current price of an asset to its highest high and lowest low over a specified time period.
Parameters:
source : (float) Source of series (close, high, low, etc.)
length : (int) Period of loopback
Returns: (float) Series of Williams R%
cci(source, length, maType, almaOffset, almaSigma, lsmaOffSet)
CCI (Commodity Channel Index). Measures the relationship between an asset's current price and its moving average.
Parameters:
source : (float) Source of series (close, high, low, etc.)
length : (int) Period of loopback
maType : (int) Type of Moving Average
almaOffset : (float) Offset for Arnaud Legoux Moving Average
almaSigma : (float) Sigma for Arnaud Legoux Moving Average
lsmaOffSet : (int) Offset for Least Squares Moving Average
Returns: (float) Series of CCI
ultimateOscillator(fastLength, middleLength, slowLength)
UO (Ultimate Oscilator). Combines three different time periods to help identify possible reversal points.
Parameters:
fastLength : (int) Fast period of loopback
middleLength : (int) Middle period of loopback
slowLength : (int) Slow period of loopback
Returns: (float) Series of Ultimate Oscilator
ultimateOscillator(source, fastLength, middleLength, slowLength)
UO (Ultimate Oscilator). Customized source. Combines three different time periods to help identify possible reversal points.
Parameters:
source : (float) Source of series (close, high, low, etc.)
fastLength : (int) Fast period of loopback
middleLength : (int) Middle period of loopback
slowLength : (int) Slow period of loopback
Returns: (float) Series of Ultimate Oscilator
macd(source, fastLength, slowLength, signalLength, maTypeFast, maTypeSlow, maTypeMACD, almaOffset, almaSigma, lsmaOffSet)
MACD (Moving Average Convergence/Divergence). Shows the difference between short-term and long-term exponential moving averages.
Parameters:
source : (float) Source of series (close, high, low, etc.)
fastLength : (int) Period for fast moving average
slowLength : (int) Period for slow moving average
signalLength : (int) Signal length
maTypeFast : (int) Type of fast moving average
maTypeSlow : (int) Type of slow moving average
maTypeMACD : (int) Type of MACD moving average
almaOffset : (float) Offset for Arnaud Legoux Moving Average
almaSigma : (float) Sigma for Arnaud Legoux Moving Average
lsmaOffSet : (int) Offset for Least Squares Moving Average
Returns: A tuple with MACD, Signal, and Histgram
fisher(length)
Fisher Transform. Normalize prices into a Gaussian normal distribution.
Parameters:
length
Returns: A tuple with Fisher Transform and signal
fisher(source, length)
Fisher Transform. Customized source. Normalize prices into a Gaussian normal distribution.
Parameters:
source : (float) Source of series (close, high, low, etc.)
length
Returns: A tuple with Fisher Transform and signal
inverseFisher(source, length, subtrahend, denominator)
Inverse Fisher Transform.
Transform the values of the Fisher Transform into a smaller and more easily interpretable scale is
through the application of an inverse transformation to the hyperbolic tangent function.
This transformation takes the values of the FT, which range from -infinity to +infinity,
to a scale limited between -1 and +1, allowing them to be more easily visualized and compared.
Parameters:
source : (float) Source of series (close, high, low, etc.)
length : (int) Period for loopback
subtrahend : (int) Denominator. Useful in unbounded indicators. For example, in CCI.
denominator
Returns: (float) Series of Inverse Fisher Transform
premierStoch(length, smoothlen)
Premier Stochastic Oscillator (PSO).
Normalizes the standard stochastic oscillator by applying a five-period double exponential smoothing
average of the %K value, resulting in a symmetric scale of 1 to -1.
Parameters:
length : (int) Period for loopback
smoothlen : (int) Period for smoothing
Returns: (float) Series of PSO
premierStoch(source, smoothlen, subtrahend, denominator)
Premier Stochastic Oscillator (PSO) of custom source.
Normalizes the source by applying a five-period double exponential smoothing average.
Parameters:
source : (float) Source of series (close, high, low, etc.)
smoothlen : (int) Period for smoothing
subtrahend : (int) Denominator. Useful in unbounded indicators. For example, in CCI.
denominator
Returns: (float) Series of PSO
stochRsi(sourceRSI, lengthRSI, kLength, kSmoothing, dSmoothing, maTypeK, maTypeD, almaOffsetKD, almaSigmaKD, lsmaOffSetKD)
Parameters:
sourceRSI
lengthRSI
kLength
kSmoothing
dSmoothing
maTypeK
maTypeD
almaOffsetKD
almaSigmaKD
lsmaOffSetKD
stochRoc(sourceROC, lengthROC, kLength, kSmoothing, dSmoothing, maTypeK, maTypeD, almaOffsetKD, almaSigmaKD, lsmaOffSetKD)
Parameters:
sourceROC
lengthROC
kLength
kSmoothing
dSmoothing
maTypeK
maTypeD
almaOffsetKD
almaSigmaKD
lsmaOffSetKD
stochUO(fastLength, middleLength, slowLength, kLength, kSmoothing, dSmoothing, maTypeK, maTypeD, almaOffsetKD, almaSigmaKD, lsmaOffSetKD)
Parameters:
fastLength
middleLength
slowLength
kLength
kSmoothing
dSmoothing
maTypeK
maTypeD
almaOffsetKD
almaSigmaKD
lsmaOffSetKD
stochTSI(source, shortLength, longLength, maType, almaOffset, almaSigma, lsmaOffSet, kLength, kSmoothing, dSmoothing, maTypeK, maTypeD, almaOffsetKD, almaSigmaKD, lsmaOffSetKD)
Parameters:
source
shortLength
longLength
maType
almaOffset
almaSigma
lsmaOffSet
kLength
kSmoothing
dSmoothing
maTypeK
maTypeD
almaOffsetKD
almaSigmaKD
lsmaOffSetKD
stochWPR(source, length, kLength, kSmoothing, dSmoothing, maTypeK, maTypeD, almaOffsetKD, almaSigmaKD, lsmaOffSetKD)
Parameters:
source
length
kLength
kSmoothing
dSmoothing
maTypeK
maTypeD
almaOffsetKD
almaSigmaKD
lsmaOffSetKD
stochCCI(source, length, maType, almaOffset, almaSigma, lsmaOffSet, kLength, kSmoothing, dSmoothing, maTypeK, maTypeD, almaOffsetKD, almaSigmaKD, lsmaOffSetKD)
Parameters:
source
length
maType
almaOffset
almaSigma
lsmaOffSet
kLength
kSmoothing
dSmoothing
maTypeK
maTypeD
almaOffsetKD
almaSigmaKD
lsmaOffSetKD
stochMACD(source, fastLength, slowLength, signalLength, maTypeFast, maTypeSlow, maTypeMACD, almaOffset, almaSigma, lsmaOffSet, kLength, kSmoothing, dSmoothing, maTypeK, maTypeD, almaOffsetKD, almaSigmaKD, lsmaOffSetKD)
Parameters:
source
fastLength
slowLength
signalLength
maTypeFast
maTypeSlow
maTypeMACD
almaOffset
almaSigma
lsmaOffSet
kLength
kSmoothing
dSmoothing
maTypeK
maTypeD
almaOffsetKD
almaSigmaKD
lsmaOffSetKD
stochFT(length, kLength, kSmoothing, dSmoothing, maTypeK, maTypeD, almaOffsetKD, almaSigmaKD, lsmaOffSetKD)
Parameters:
length
kLength
kSmoothing
dSmoothing
maTypeK
maTypeD
almaOffsetKD
almaSigmaKD
lsmaOffSetKD
stochVolume(kLength, kSmoothing, dSmoothing, maTypeK, maTypeD, almaOffsetKD, almaSigmaKD, lsmaOffSetKD)
Parameters:
kLength
kSmoothing
dSmoothing
maTypeK
maTypeD
almaOffsetKD
almaSigmaKD
lsmaOffSetKD
stochMFI(source, length, kLength, kSmoothing, dSmoothing, maTypeK, maTypeD, almaOffsetKD, almaSigmaKD, lsmaOffSetKD)
Parameters:
source
length
kLength
kSmoothing
dSmoothing
maTypeK
maTypeD
almaOffsetKD
almaSigmaKD
lsmaOffSetKD
stochOBV(source, kLength, kSmoothing, dSmoothing, maTypeK, maTypeD, almaOffsetKD, almaSigmaKD, lsmaOffSetKD)
Parameters:
source
kLength
kSmoothing
dSmoothing
maTypeK
maTypeD
almaOffsetKD
almaSigmaKD
lsmaOffSetKD
stochPVI(source, kLength, kSmoothing, dSmoothing, maTypeK, maTypeD, almaOffsetKD, almaSigmaKD, lsmaOffSetKD)
Parameters:
source
kLength
kSmoothing
dSmoothing
maTypeK
maTypeD
almaOffsetKD
almaSigmaKD
lsmaOffSetKD
stochNVI(source, kLength, kSmoothing, dSmoothing, maTypeK, maTypeD, almaOffsetKD, almaSigmaKD, lsmaOffSetKD)
Parameters:
source
kLength
kSmoothing
dSmoothing
maTypeK
maTypeD
almaOffsetKD
almaSigmaKD
lsmaOffSetKD
stochPVT(source, kLength, kSmoothing, dSmoothing, maTypeK, maTypeD, almaOffsetKD, almaSigmaKD, lsmaOffSetKD)
Parameters:
source
kLength
kSmoothing
dSmoothing
maTypeK
maTypeD
almaOffsetKD
almaSigmaKD
lsmaOffSetKD
stochVO(shortLen, longLen, maType, almaOffset, almaSigma, lsmaOffSet, kLength, kSmoothing, dSmoothing, maTypeK, maTypeD, almaOffsetKD, almaSigmaKD, lsmaOffSetKD)
Parameters:
shortLen
longLen
maType
almaOffset
almaSigma
lsmaOffSet
kLength
kSmoothing
dSmoothing
maTypeK
maTypeD
almaOffsetKD
almaSigmaKD
lsmaOffSetKD
stochVROC(length, kLength, kSmoothing, dSmoothing, maTypeK, maTypeD, almaOffsetKD, almaSigmaKD, lsmaOffSetKD)
Parameters:
length
kLength
kSmoothing
dSmoothing
maTypeK
maTypeD
almaOffsetKD
almaSigmaKD
lsmaOffSetKD
iftRSI(sourceRSI, lengthRSI, lengthIFT)
Parameters:
sourceRSI
lengthRSI
lengthIFT
iftROC(sourceROC, lengthROC, lengthIFT)
Parameters:
sourceROC
lengthROC
lengthIFT
iftUO(fastLength, middleLength, slowLength, lengthIFT)
Parameters:
fastLength
middleLength
slowLength
lengthIFT
iftStoch(kLength, kSmoothing, dSmoothing, maTypeK, maTypeD, almaOffsetKD, almaSigmaKD, lsmaOffSetKD, lengthIFT)
Parameters:
kLength
kSmoothing
dSmoothing
maTypeK
maTypeD
almaOffsetKD
almaSigmaKD
lsmaOffSetKD
lengthIFT
iftTSI(source, shortLength, longLength, maType, almaOffset, almaSigma, lsmaOffSet, lengthIFT)
Parameters:
source
shortLength
longLength
maType
almaOffset
almaSigma
lsmaOffSet
lengthIFT
iftCCI(source, length, maType, almaOffset, almaSigma, lsmaOffSet, lengthIFT)
Parameters:
source
length
maType
almaOffset
almaSigma
lsmaOffSet
lengthIFT
iftFisher(length, lengthIFT)
Parameters:
length
lengthIFT
iftMACD(source, fastLength, slowLength, signalLength, maTypeFast, maTypeSlow, maTypeMACD, almaOffset, almaSigma, lsmaOffSet, lengthIFT)
Parameters:
source
fastLength
slowLength
signalLength
maTypeFast
maTypeSlow
maTypeMACD
almaOffset
almaSigma
lsmaOffSet
lengthIFT
iftWPR(source, length, lengthIFT)
Parameters:
source
length
lengthIFT
iftMFI(source, length, lengthIFT)
Parameters:
source
length
lengthIFT
iftCMF(length, lengthIFT)
Parameters:
length
lengthIFT
iftVO(shortLen, longLen, maType, almaOffset, almaSigma, lsmaOffSet, lengthIFT)
Parameters:
shortLen
longLen
maType
almaOffset
almaSigma
lsmaOffSet
lengthIFT
iftVROC(length, lengthIFT)
Parameters:
length
lengthIFT
smiRSI(source, length, shortLengthTSI, longLengthTSI, maTypeTSI, almaOffsetTSI, almaSigmaTSI, lsmaOffSetTSI, maTypeSignal, smoothingLengthSignal, almaOffsetSignal, almaSigmaSignal, lsmaOffSetSignal)
Parameters:
source
length
shortLengthTSI
longLengthTSI
maTypeTSI
almaOffsetTSI
almaSigmaTSI
lsmaOffSetTSI
maTypeSignal
smoothingLengthSignal
almaOffsetSignal
almaSigmaSignal
lsmaOffSetSignal
smiROC(source, length, shortLengthTSI, longLengthTSI, maTypeTSI, almaOffsetTSI, almaSigmaTSI, lsmaOffSetTSI, maTypeSignal, smoothingLengthSignal, almaOffsetSignal, almaSigmaSignal, lsmaOffSetSignal)
Parameters:
source
length
shortLengthTSI
longLengthTSI
maTypeTSI
almaOffsetTSI
almaSigmaTSI
lsmaOffSetTSI
maTypeSignal
smoothingLengthSignal
almaOffsetSignal
almaSigmaSignal
lsmaOffSetSignal
smiVROC(length, shortLengthTSI, longLengthTSI, maTypeTSI, almaOffsetTSI, almaSigmaTSI, lsmaOffSetTSI, maTypeSignal, smoothingLengthSignal, almaOffsetSignal, almaSigmaSignal, lsmaOffSetSignal)
Parameters:
length
shortLengthTSI
longLengthTSI
maTypeTSI
almaOffsetTSI
almaSigmaTSI
lsmaOffSetTSI
maTypeSignal
smoothingLengthSignal
almaOffsetSignal
almaSigmaSignal
lsmaOffSetSignal
smiWPR(source, length, shortLengthTSI, longLengthTSI, maTypeTSI, almaOffsetTSI, almaSigmaTSI, lsmaOffSetTSI, maTypeSignal, smoothingLengthSignal, almaOffsetSignal, almaSigmaSignal, lsmaOffSetSignal)
Parameters:
source
length
shortLengthTSI
longLengthTSI
maTypeTSI
almaOffsetTSI
almaSigmaTSI
lsmaOffSetTSI
maTypeSignal
smoothingLengthSignal
almaOffsetSignal
almaSigmaSignal
lsmaOffSetSignal
smiFT(length, shortLengthTSI, longLengthTSI, maTypeTSI, almaOffsetTSI, almaSigmaTSI, lsmaOffSetTSI, maTypeSignal, smoothingLengthSignal, almaOffsetSignal, almaSigmaSignal, lsmaOffSetSignal)
Parameters:
length
shortLengthTSI
longLengthTSI
maTypeTSI
almaOffsetTSI
almaSigmaTSI
lsmaOffSetTSI
maTypeSignal
smoothingLengthSignal
almaOffsetSignal
almaSigmaSignal
lsmaOffSetSignal
smiFT(source, length, shortLengthTSI, longLengthTSI, maTypeTSI, almaOffsetTSI, almaSigmaTSI, lsmaOffSetTSI, maTypeSignal, smoothingLengthSignal, almaOffsetSignal, almaSigmaSignal, lsmaOffSetSignal)
Parameters:
source
length
shortLengthTSI
longLengthTSI
maTypeTSI
almaOffsetTSI
almaSigmaTSI
lsmaOffSetTSI
maTypeSignal
smoothingLengthSignal
almaOffsetSignal
almaSigmaSignal
lsmaOffSetSignal
smiCCI(source, length, maTypeCCI, almaOffsetCCI, almaSigmaCCI, lsmaOffSetCCI, shortLengthTSI, longLengthTSI, maTypeTSI, almaOffsetTSI, almaSigmaTSI, lsmaOffSetTSI, maTypeSignal, smoothingLengthSignal, almaOffsetSignal, almaSigmaSignal, lsmaOffSetSignal)
Parameters:
source
length
maTypeCCI
almaOffsetCCI
almaSigmaCCI
lsmaOffSetCCI
shortLengthTSI
longLengthTSI
maTypeTSI
almaOffsetTSI
almaSigmaTSI
lsmaOffSetTSI
maTypeSignal
smoothingLengthSignal
almaOffsetSignal
almaSigmaSignal
lsmaOffSetSignal
smiUO(fastLength, middleLength, slowLength, shortLengthTSI, longLengthTSI, maTypeTSI, almaOffsetTSI, almaSigmaTSI, lsmaOffSetTSI, maTypeSignal, smoothingLengthSignal, almaOffsetSignal, almaSigmaSignal, lsmaOffSetSignal)
Parameters:
fastLength
middleLength
slowLength
shortLengthTSI
longLengthTSI
maTypeTSI
almaOffsetTSI
almaSigmaTSI
lsmaOffSetTSI
maTypeSignal
smoothingLengthSignal
almaOffsetSignal
almaSigmaSignal
lsmaOffSetSignal
smiMACD(source, fastLength, slowLength, signalLength, maTypeFast, maTypeSlow, maTypeMACD, almaOffset, almaSigma, lsmaOffSet, shortLengthTSI, longLengthTSI, maTypeTSI, almaOffsetTSI, almaSigmaTSI, lsmaOffSetTSI, maTypeSignal, smoothingLengthSignal, almaOffsetSignal, almaSigmaSignal, lsmaOffSetSignal)
Parameters:
source
fastLength
slowLength
signalLength
maTypeFast
maTypeSlow
maTypeMACD
almaOffset
almaSigma
lsmaOffSet
shortLengthTSI
longLengthTSI
maTypeTSI
almaOffsetTSI
almaSigmaTSI
lsmaOffSetTSI
maTypeSignal
smoothingLengthSignal
almaOffsetSignal
almaSigmaSignal
lsmaOffSetSignal
smiVol(shortLengthTSI, longLengthTSI, maTypeTSI, almaOffsetTSI, almaSigmaTSI, lsmaOffSetTSI, maTypeSignal, smoothingLengthSignal, almaOffsetSignal, almaSigmaSignal, lsmaOffSetSignal)
Parameters:
shortLengthTSI
longLengthTSI
maTypeTSI
almaOffsetTSI
almaSigmaTSI
lsmaOffSetTSI
maTypeSignal
smoothingLengthSignal
almaOffsetSignal
almaSigmaSignal
lsmaOffSetSignal
smiMFI(source, length, shortLengthTSI, longLengthTSI, maTypeTSI, almaOffsetTSI, almaSigmaTSI, lsmaOffSetTSI, maTypeSignal, smoothingLengthSignal, almaOffsetSignal, almaSigmaSignal, lsmaOffSetSignal)
Parameters:
source
length
shortLengthTSI
longLengthTSI
maTypeTSI
almaOffsetTSI
almaSigmaTSI
lsmaOffSetTSI
maTypeSignal
smoothingLengthSignal
almaOffsetSignal
almaSigmaSignal
lsmaOffSetSignal
smiCMF(length, shortLengthTSI, longLengthTSI, maTypeTSI, almaOffsetTSI, almaSigmaTSI, lsmaOffSetTSI, maTypeSignal, smoothingLengthSignal, almaOffsetSignal, almaSigmaSignal, lsmaOffSetSignal)
Parameters:
length
shortLengthTSI
longLengthTSI
maTypeTSI
almaOffsetTSI
almaSigmaTSI
lsmaOffSetTSI
maTypeSignal
smoothingLengthSignal
almaOffsetSignal
almaSigmaSignal
lsmaOffSetSignal
smiOBV(source, shortLengthTSI, longLengthTSI, maTypeTSI, almaOffsetTSI, almaSigmaTSI, lsmaOffSetTSI, maTypeSignal, smoothingLengthSignal, almaOffsetSignal, almaSigmaSignal, lsmaOffSetSignal)
Parameters:
source
shortLengthTSI
longLengthTSI
maTypeTSI
almaOffsetTSI
almaSigmaTSI
lsmaOffSetTSI
maTypeSignal
smoothingLengthSignal
almaOffsetSignal
almaSigmaSignal
lsmaOffSetSignal
smiPVT(source, shortLengthTSI, longLengthTSI, maTypeTSI, almaOffsetTSI, almaSigmaTSI, lsmaOffSetTSI, maTypeSignal, smoothingLengthSignal, almaOffsetSignal, almaSigmaSignal, lsmaOffSetSignal)
Parameters:
source
shortLengthTSI
longLengthTSI
maTypeTSI
almaOffsetTSI
almaSigmaTSI
lsmaOffSetTSI
maTypeSignal
smoothingLengthSignal
almaOffsetSignal
almaSigmaSignal
lsmaOffSetSignal
smiVO(shortLen, longLen, maType, almaOffset, almaSigma, lsmaOffSet, shortLengthTSI, longLengthTSI, maTypeTSI, almaOffsetTSI, almaSigmaTSI, lsmaOffSetTSI, maTypeSignal, smoothingLengthSignal, almaOffsetSignal, almaSigmaSignal, lsmaOffSetSignal)
Parameters:
shortLen
longLen
maType
almaOffset
almaSigma
lsmaOffSet
shortLengthTSI
longLengthTSI
maTypeTSI
almaOffsetTSI
almaSigmaTSI
lsmaOffSetTSI
maTypeSignal
smoothingLengthSignal
almaOffsetSignal
almaSigmaSignal
lsmaOffSetSignal
smiPVI(source, shortLengthTSI, longLengthTSI, maTypeTSI, almaOffsetTSI, almaSigmaTSI, lsmaOffSetTSI, maTypeSignal, smoothingLengthSignal, almaOffsetSignal, almaSigmaSignal, lsmaOffSetSignal)
Parameters:
source
shortLengthTSI
longLengthTSI
maTypeTSI
almaOffsetTSI
almaSigmaTSI
lsmaOffSetTSI
maTypeSignal
smoothingLengthSignal
almaOffsetSignal
almaSigmaSignal
lsmaOffSetSignal
smiNVI(source, shortLengthTSI, longLengthTSI, maTypeTSI, almaOffsetTSI, almaSigmaTSI, lsmaOffSetTSI, maTypeSignal, smoothingLengthSignal, almaOffsetSignal, almaSigmaSignal, lsmaOffSetSignal)
Parameters:
source
shortLengthTSI
longLengthTSI
maTypeTSI
almaOffsetTSI
almaSigmaTSI
lsmaOffSetTSI
maTypeSignal
smoothingLengthSignal
almaOffsetSignal
almaSigmaSignal
lsmaOffSetSignal
rsiVolume(length)
Parameters:
length
rsiMA(sourceMA, lengthMA, maType, almaOffset, almaSigma, lsmaOffSet, lengthRSI)
Parameters:
sourceMA
lengthMA
maType
almaOffset
almaSigma
lsmaOffSet
lengthRSI
SFC Smart Money Manipulation - Time, Advanced Market StructureThis indicator shows the market structure in more advanced way and different time cycles.
Markets moves in cycles and swings. The indicator will help to determine these cycles and swings by time and price. These are the two columns of the market understanding. The third one is volume/ momentum, but it will not be discussed here.
Advanced Market Structure
According to ICT and Larry Williams Market Structure is not only Highs and Lows.
They present more advanced understanding of the MS:
-Short Term Highs/ Lows
-Intermediate Term Highs/ Lows
-Long Term Highs/ Lows
Rules of how to determine the Swing Points according to Larry Williams:
"A market has made a short-term low when we have a day (or bar if you are using different time periods) that has a higher low on both sides. By the same token a short-term high will be a day (or bar) that has lower bars on both sides of it."
"A short-term high with lower short-term highs on both sides is an intermediate- term high. By the same token, a short-term low with higher short-term lows on both sides is an intermediate-term low."
"An intermediate-term high with lower intermediate-term highs on both sides of it is just naturally a long-term high by our definition, thanks to understanding market structure.
An intermediate-term low with higher intermediate-term lows on both sides of it is just naturally a long-term low by our definition, thanks to understanding market structure."
If the Highs and Lows are labeled properly there is high probability to predict the next High or Low. In this way the trader will know how the current trend is changing and what kind of retracement is coming - deep or shallow.
Timing
Market moves in time cycles.
There is a theory that the swings are equal by time and length. This is not always the case, but very very often.
Indicator time features:
- Swing Trading days - how many time market needed to form a swing. Only Long term(main) Swings are measured. This will help trader to label T-formations.
" T Formations is cyclically related for formations that can be drawn to project the time frame of likely turning points. Basically T-formations are based on the concept that the time distance between the starting low/high of the cyclical wave and its peak is likely to be subsequently repeated between that peak and the final low/high of that cycle."
- Seasonality - theoretically an asset should go up or down in particular yearly quarter. Practically the direction not always match to quarters. Thats why the indicator shows the theoretical seasonal direction and historical real direction.
Seasonal direction is automatically displayed or XAUUSD, XAGUSD, EURUSD, AUDUSD, GBPUSD. There is a ways to set the seasonality manually.
- Earnings Season - This time is very important for Stocks and Indices. Most of the time the assets are in bullish trend during the Earnings Seasons.
- Monthly separator - Shows the monthly time cycle
- Gold bullish months - There are studies on Gold market. They shows that Gold is very bullish in particular months. These are displayed.
The indicator works only on Daily Time Frame.
Forex Master Pattern Contraction Finder by nnamThis script is for use with the FOREX Master Pattern to assist the user with drawing in True Value areas.
The script uses a combination of LOWER HIGHS and HIGHER LOWS to pinpoint areas of potential contraction and marks them with an X.
Using these X symbols as visual guidance, the user can easily locate areas of contraction or "tightening" of the price as it comes out of the expansion phase.
In addition, the daily highs and lows create a visible red or green box (depending on price in relation to the previous days close). These boxes also assist the user in determining the average price for the day and whether or not the price is contracting. A WIDE box is indicative of an expansion phase or widening in price swings and a "skinny" box is indicative of a tightening in price swings .
A combination of both plotted X contraction signals and a tightening box are highly indicative of a contraction phase. These contraction phases appear early in the beginning stage of the FOREX MASTER PATTERN giving the user ample time to plan trades and spot breakouts from the contraction into expansion.
The Image above shows a prime example of a potential contraction in price on the ETH/USDT 1 hour chart.
A series of highs and lows shows an expansion. The indicator settings allow the user to turn ON a visual text label showing each higher high, lower high, higher low and lower low in any combination.
Lower High and Higher low is ON by default and is represented by BOTH an X and the initials LH above bar and HL below bar for easier identification of the actual bar that triggered the signal.
In the absence of an X signal or initials LH + HL the contraction is not confirmed. As you can see in the screenshot below, the boxes alone are not indicative of a contraction and can be false positives. It is important to wait for both.
INPUTS AND SETTINGS
To make the indicator more user friendly, I have added several on off buttons for certain attributes. Many are OFF by default for a clean look when firs t starting the indicator. Below is a list of settings and what they are.
Contraction Settings
- Show potential contractions on chart?
on by default - shows the Lower Highs and Lower Lows with an X sumbol
Moving Average Settings
Exponential Moving Average Length
default is 50EMA but can be changed
- Show Moving Average on chart?
off by default and must be checked to add the ema
RSI Settings
- Show RSI Overbought and Oversold?
off by default
Users can turn this on and use in conjunction with higher high and lower high to spot potential reversals
RSI Source - default is CLOSE
RSI Length - default is 6
RSI Overbought Level - default is 85
RSI Oversold Level - default is 15
Chart Type Settings
- Use Renko Style Pivots?
Allows Renko to be used (open/close for high/low)
off by default
LOWER HIGHS AND LOWER LOWS (VIEW BULLISH TRENDS)
Show higher highs?
Show Higher Lows?
These can be turned on or off depending on your preference for trend spotting.
LOWER HIGHS AND LOWER LOWS (VIEW BEARISH TRENDS)
Show Lower Highs?
Show Lower Lows?
These can be turned on or off depending on your preference for trend spotting.
BUY AND SELL SIGNALS SETTINGS
(these are experimental)
- Show Potential BUY signals on chart?
- Show Potential SELL signals on chart?
These 'experimental signals' combine overbought RSI with Higher Highs and Oversold RSI with Lower Lows to signal a potential turn in price.
During major corrections you may get several BUY signals in a row as the price plummets and during FOMO bull runs, you may get several SELL signals in a row.
To help minimize this, you can turn ON the Renko option listed above and change the RSI to a higher number.
The signals work best using Heikin Ashi and on 1 hour time frames.
In order for a trigger to occur, the script ensures there are several RSI overbought and oversold signals in a row.
RSI and Higher High, Lower Low options do not have to be turned on to get the signals.
BOX Settings
You can change the border width and color of the boxes.
You may also JOIN the boxes if you want to.
I really hope you enjoy this indicator and I hope it brings you good luck in your trading.
Don't forget to follow so you are notified when I upload any new indicators.
nnamdert
Price Action All In One IndicatorIf you are the one who is "Price Action" style & does not want to use many indicators or complex indicators or you are an ICT (The Inner Circle Trader)
student or ICT charter, this simple beautiful All In One Indicator is right for you.
The indicator has the following functions.
TIME ZONE SETTING
The default timezone is New York Time GMT-4, if you leave the time zone setting blank, it will use the symbol timezone. Note that the trading time changes with one hour delay in winter. so if you just trade forex, and leave the time zone setting blank, TradingView will adjust the symbol timezone automatically for you or don't forget to change the timezone setting GMT-4 or GMT-5 depending on daylight saving time.
STATISTIC PANEL
You can choose which panel to show through settings.
Session Info Panel : pips info of ADR, Asian, London, and New York sessions.
Trend Panel : showing trend (up/down) of
5m/15m/1h/4h/D/W time frames (TF)
4MA (default values: SMA with lengths: 20–50–100–200)
Money Management Panel : in trading, money management is very important. Just put the % risk, & stop loss value below, the indicator will calculate a suitable size/amount for each trade.
Size by Lots: input stop loss in pips
Size by Units: input stop loss in % (of price)
(*)Units size is calculated by % stop loss & current bar close price. You have to determine a stop-loss price to convert to % stop loss by yourself.
TIME SEPARATORS
We can choose which time separators we want to display. The indicator has 5 options: Anchor Time/Day/Week/Month/Quarter. Of course, we can choose to show just one or all 5 of them.
With Anchor Time you can choose which time you want to draw a vertical line for better timing analysis. This can show up to 2 Anchor Time lines. The default values are 00:00 (New York Midnight Opening) and 08:30 (New York Session Opening). You also have an option to show the past lines or not.
About Day Separator, cause TradingView has supported Session Breaks in Setting but if you don't like to use it or when enabling, it distracts you, you can use mine. My favorite trading dates are Tuesday & Wednesday.
PRICE LEVELS
For intraday trading, the high/low/close of the previous day, the previous week, ADR (default period is 5) are very important key levels. You can choose which one you like to show for better analysis. Of course, you can change the color & style of the lines. This is also my favorite indicator.
This indicator also has an option to show up to 2 price lines at a specific time, you can choose the price type (high/low/close/open) that you want to display. The default time values are:
Specific Time 1: 0:00. (New York Midnight Opening Price)
Specific Time 2: 8:30 am. (New York Session Opening Price)
ACCUMULATION ZONE
The market tends to reprice the higher/lower to the old high/low or imbalance/fair value price to promote buy/sell stops or to provide smart money pricing for long/short entries. Typically, it redistributes quickly and you must learn to anticipate them at key levels intraday. Weak short/long holders will be squeezed in the retracement.
Except for the open price, the price changes continuously until the closing time, so the accumulation area can also be changed in real-time, but if you combine it with other information when analyzing, you can predict/determine whether the zone has been established or not with high probability. In short, price needs time to be accumulated, I usually don't pay attention to this daily zone till London open/close or New York sessions
Not only daily zone, but the indicator also supports higher timeframes accumulation zone from
SESSION & STD
There are 3 sessions: Asian, London, New York. The default values are below (New York Time).
Asian: 19:00 ~ 00:00
London Open (London KillZone): 01:00 ~ 05:00
New York Open (New York KillZone): 07:00 ~ 10:00
If you do not want to show the label, just leave the label values blank or change them to whatever you want.
This is one of my favorite functions. I use it on 15m, 30m, 1h TF for Forex intraday trading. My favorite trading sessions are London Open & New York Open.
You also can choose to show or not Standard Deviations (STD). The default values are set for Asian Range STD and max STD levels can be shown are 5. I use the following 3 types of STD (New York Time):
CBDR (Central Bank Deviations) STD: 14:00 ~ 20:00
Flout STD: 15:00 ~00:00
Asian Range STD: 19:00 ~ 00:00
LOOKBACK HIGH/LOW/MID
Can show high/low/mid of the data ranges on the daily/4h chart. The default values are:
- 20–40–60 days back from today for daily TF.
- 30–60–90 bars back from the latest bar for 4h TF.
The default anchor bar for calculating the lookback is the latest one but with:
- 4h TF: we can change the lookback from the 1st day of the week.
- Daily TF: we can change the lookback from the 1st day of the month.
The indicator also has options showing the high/low/mid (equilibrium level) lines for better analysis. Especially, on daily TF, we have the option that can show up to 4 lines (25% for each one) of the data range.
Of course, you can change the colors or the style of the high/low/mid lines.
The lookback can be shown on the lower TFs for better detection when the market structure is shifted.
MAGIC BARS
Fractal bar : The bar's color is changed when the divergence occurs between the price & RSI. You can change the RSI period (default value is 14) & RSI source. (open/high/low/close,…)
Imbalance bar or liquidity void or fair value gap - whatever you call it. This is my favorite indicator when trading on all TFs.You can choose to extend the last n imbalance bars if you like in the settings. I make sure I covered all cases of imbalance/fair value gap.
OLD HIGH/LOW
First, this function is not used as the common Support & Resistance that retail traders usually use, so I call it Old High/Low. I usually use it in 2 ways:
Detect the next buy/sell stops that Market Makers aim to manipulate.
Detect whether market structure shifted or not (Break of structure)
In settings you can:
Set the period to detect high/low levels, the default value is 10. My other favorite values are 6 & 2.
On a lower time frame, you might want to set it to a large number to remove noise.
On a higher time frame, a small number is enough, I think.
Choose the numbers of the last lines you want to show on your chart.
Of course, the style of lines can be changed easily.
TRENDLINES
A very simple trendline with default pivot left strength is 10.
By default, trendline uses high/low price but you have the "Using close price" option.
LINEAR REGRESSION CHANNEL
The Linear Regression Channel is a three-line technical indicator used to analyze the upper and lower limits of an existing trend. It is a statistical tool used to predict the future from past data and is used to determine trend direction or when prices may be overextended.
You can choose
To fill the background or not
To show inner/outer lines or not
To change the colors/line styles of upper zone, lower zone, upper lines, lower lines, midline
DIRECTION BOX
Working on all TFs, this looks like the same with lookback function but if you would like to display them in a box for easily focusing/comparing with other symbols or for detecting divergence in a specific period. The indicator also has a setting to show or hide lines connecting between lows or highs.
Another example of how I use High/Low connecting lines to detect divergence between S&P 500 and NASDAQ 100.
ZIG ZAG
Can show up to 2 ZigZag lines.
This is suitable for traders who have difficulty in detecting key levels (recent high/low) of the prices to confirm market structure or just for drawing Fibonacci easily at those levels.
MA (Moving Average)
I believe that this is one of the most used indicators for every trader. There are 5 types of MA to choose from: EMA, SMA, WMA, VWMA, SMMA(RMA).
This can show up to 4 MAs. You can choose the source (close/high/low,…) for each one. My favorite values are 34 & 89 EMA.
This indicator also supports MA Bands. You can select which MA you want to display the bands, and the "width" of the bands can be changed via the settings.
WATERMARK
It's just a simple function but I think it's very useful for those who want to add Copyright info to the chart, to prevent others from copying it.
Others/known issues/limitations
In forex or stock (things that are traded only on weekdays), TradingView's does not include the latest bars till Monday so the Day Separator cannot fill that space. Because TradingView deals with those bars as Sunday's ones so I set the color of Sunday the same as Friday for good UI/UX. On Crypto charts, the indicator shows without problems.
If you see "Internal server study error", please try closing the current TradingView tab in your browser and reopening it in a new tab. The error will disappear.
Because TradingView does not provide any detailed error information when such "general error" occurs. It's very difficult to detect which function is causing this error or is there something that caused TradingView "overloaded" through a long time running/loading on that tab? Honestly, I don't know exactly the cause, but in my experience, this error often occurs in the following cases:
When you have the TradingView Tab open for hours. In my case, I usually leave TradingView tab open overnight & when I come back the next day, this error might appear. (I'm a Mac user & I almost never shut down my Mac)
When you change settings too many times, especially settings of drawing objects like line width in a using session, it might cause this error.
So, after changing the setting or when you come back for the next trade, please save & close that TradingView tab, and then open a new one, everything will work fine.
You can see the images below that show I have tested my indicator from 1-minute time frame, enabled all functions, change every setting to max values & everything still works fine.
TRADING MADE SIMPLEThis indicator shows market structure. The standard method of using Williams Highs and Lows as pivots, is something of an approximation.
What's original here is that we follow rules to confirm Local Highs and Local Lows, and strictly enforce that a Low can only follow a confirmed High and vice-versa.
-- Highs and Lows
To confirm a candle as a Local High, you need a later candle to Close below its Low. To confirm a Local Low, you need a Close above its High.
A Low can only follow a High (after it's been confirmed). You can't go e.g High, High, Low, Low, only High, Low, High, Low.
When price makes Higher Highs and Higher Lows, market structure is said to be bullish. When price makes Lower Lows and Lower Highs, it's bearish.
I've defined the in-between Highs and Lows as "Ranging", meaning, neutral. They could be trend continuation or reversal.
-- Bullish/Bearish Breaks
A Bullish break in market structure is when the Close of the current candle goes higher than the previous confirmed Local High.
A Bearish Break is when the Close of the current candle goes lower than the most recent confirmed Local Low.
I chose to use Close rather than High to reduce edge case weirdness. The breaking candle often ends up being a big one, thus the close of that candle can be a poor entry.
You can get live warnings by setting the alert to Options: Only Once, because during a candle, the current price is taken as the Close.
Breaks are like early warnings of a change in market bias, because you're not waiting for a High or Low to be formed and confirmed.
Buy The Dip / Sell The Rally
Buy The Dip is a label I gave to the first Higher Low in a bullish market structure. Sell The Rally is the first Lower High in a bearish market structure.
These *might* be good buying/selling opportunities, but you still need to do your own analysis to confirm that.
== USAGE ==
The point of knowing market structure is so you don't make bullish bets in a bearish market and vice versa -
or if you do at least you're aware that that's what you're doing, and hopefully have some overwhelmingly good reason to do so.
These are not signals to be traded on their own. You still need a trade thesis. Use with support & resistance and your other favourite indicators.
Works on any market on any timeframe. Be aware that market structure will be different on different timeframes.
IMPORTANT: If you're not seeing what you expect, check your settings and re-read this entire description carefully. Confirming Highs and Lows can get deceptively complex.
Comprehensive Market AnalyzerVERSION 2.0:
Notice to users: To better reflect its extensive features, this indicator has been renamed from "Tsūrubokkusu (Toolbox) 🧰" to "Comprehensive Market Analyzer". Thank you for your understanding and adaptation to this change.
Purpose and Usage:
The Comprehensive Market Analyzer is designed to provide traders with a holistic view of market conditions by integrating various technical indicators into a single,
cohesive tool. Each indicator has been carefully selected and improved to work together, offering enhanced customization and advanced market insights.
This combination allows for more comprehensive market analysis, improved decision-making, and efficient trading strategies.
📘 Machine Learning Integration
Purpose : Utilizes machine learning algorithms to analyze past market data and provides predictive insights based on historical data.
Usage : Activate machine learning features, set lookback windows, influence weighting, and start bar for improved trend predictions.
Activate Machine Learning :
Description : Enables advanced machine learning features that analyze past market data.
Details : This feature allows the algorithm to use historical data to forecast market movements, providing traders with enhanced predictive insights on historical data.
Kernel Lookback Window :
Description : Sets the number of previous bars that the algorithm will analyze.
Details : A higher number provides a broader view of market trends, while a lower number makes the model more sensitive to recent changes.
Kernel Influence Weighting :
Description : Adjusts the emphasis on recent versus older data.
Details : Increasing this value gives more importance to recent data, potentially making predictions more responsive to new trends.
Kernel Calculation Start Bar :
Description : Specifies the bar number from which to start the machine learning calculations.
Details : Avoids early data which may contain excessive noise and less reliable market signals.
Kernel Functions :
Gaussian Kernel :
Description : Uses a Gaussian distribution to weight historical data, focusing on more recent data points for trend analysis.
Details : Calculates weights based on the Gaussian distribution, emphasizing data points closer to the present.
Laplacian Kernel :
Description : Applies Laplacian distribution, emphasizing data points closer to the current time more heavily.
Details : Uses the Laplacian function to provide a different perspective on data weighting.
RBF Kernel :
Description : Utilizes a Radial Basis Function for smoothing and analyzing data, providing a different approach to trend prediction.
Details : Applies the RBF function to smooth data and enhance the accuracy of trend predictions.
Wavelet Kernel :
Description : Applies wavelet transform for analyzing frequency components, helping to detect patterns in the price movements.
Details : Uses wavelet-based calculations to focus on specific frequency components within the data, aiding in pattern recognition.
📘 Enhanced Ichimoku Kinkō Hyō Integration
Purpose : Provides a comprehensive overview of market trends and momentum using the Ichimoku Kinkō Hyō indicator.
Usage : Display various components of the Ichimoku Kinkō Hyō, customize their appearance, provides additional calculations for trend analysis.
Display Ichimoku Kinkō Hyō :
Description : Toggle to show or hide the Ichimoku Kinkō hyō indicator.
Details : This indicator helps traders see support and resistance levels, trend direction, and potential future movements.
Activate Heikin-Ashi Source :
Description : Switches between regular price data and Heikin-Ashi candles for analysis.
Details : Heikin-Ashi candles smooth price data, making trends easier to spot.
Display Tenkan-Sen Line :
Description : Shows the Tenkan-Sen line, a key short-term trend indicator.
Color Customization : Set the color of the Tenkan-Sen line for better visibility.
Minimum Length : Determine the shortest period for calculating the Tenkan-Sen line.
Maximum Length : Determine the longest period for calculating the Tenkan-Sen line.
Dynamic Length Adjustment : Automatically adjusts the length of the Tenkan-Sen based on market conditions.
Display Kijun-Sen Line :
Description : Shows the Kijun-Sen line, a key medium-term trend indicator.
Color Customization : Set the color of the Kijun-Sen line for better visibility.
Minimum Length : Determine the shortest period for calculating the Kijun-Sen line.
Maximum Length : Determine the longest period for calculating the Kijun-Sen line.
Dynamic Length Adjustment : Automatically adjusts the length of the Kijun-Sen based on market conditions.
Kijun-Sen Divider Tool : Adjust the sensitivity of the Kijun-Sen calculation.
Display Chikou Span :
Description : Shows the Chikou Span, which lags behind the current price to help confirm trends.
Bear Phase Color : Set the color for bearish periods.
Bull Phase Color : Set the color for bullish periods.
Consolidation Color : Set the color for consolidation periods.
Minimum Length : Determine the shortest lag period for the Chikou Span.
Maximum Length : Determine the longest lag period for the Chikou Span.
Dynamic Length Adjustment : Automatically adjusts the length of the Chikou Span based on market conditions.
Display Senkou Span A and B :
Description : Shows the Senkou Span A and B, which form the Ichimoku Cloud indicating future support and resistance levels.
Bear Color : Set the color for bearish clouds.
Bull Color : Set the color for bullish clouds.
Neutral Color : Set the color for neutral periods.
Minimum Length : Determine the shortest period for calculating the Senkou Span.
Maximum Length : Determine the longest period for calculating the Senkou Span.
Dynamic Length Adjustment : Automatically adjusts the length of the Senkou Span based on market conditions.
Projection Offset : Set how far ahead the Senkou Span is projected.
Kumo Cloud Settings :
Enable Kumo Cloud Fill : Toggle to fill the space between Senkou Span A and B with color.
Cloud Fill Transparency : Adjust the transparency of the cloud fill.
Apply WMA Smoothing :
Description : Smooths the indicator lines using a Weighted Moving Average to clarify trends.
Bar Coloring Based on Ichimoku Signals :
Description : Colors the bars based on Ichimoku signals to provide a quick visual indication of market sentiment.
Bearish Signal Bar Color : Set the color for bars during bearish signals.
Bullish Signal Bar Color : Set the color for bars during bullish signals.
Consolidation Signal Bar Color : Set the color for bars during consolidation periods.
Neutral Bar Color : Set the color for bars during neutral conditions.
Enhanced Calculations :
Heikin Ashi Values : Smooths price movements to make trends more visible.
Alternative Source Calculation : Uses a different method for calculating the indicator based on user settings.
Volume Calculations : Enhanced functions for calculating volume based on different candlestick patterns.
Dynamic Length Adjustment : Automatically adjusts the length of Ichimoku components based on market volatility.
Gaussian Kernel Calculations : Uses advanced calculations for smoother and more accurate trend analysis.
Chikou Span Adaptation : Improved calculation for the Chikou Span using dynamic lengths and advanced methods.
Visual Enhancements : Adds color gradients to the Senkou Span and dynamic coloring for the Chikou Span to improve trend visibility.
Plotting Ichimoku Components :
Tenkan-Sen : Plots the Tenkan-Sen line with dynamic adjustments.
Kijun-Sen : Plots the Kijun-Sen line with dynamic adjustments.
Senkou Span A and B : Plots these lines with dynamic projections and advanced smoothing.
Chikou Span : Plots the Chikou Span with dynamic offsets and coloring.
📘 Enhanced Candlestick Patterns Integration
Purpose : Identifies and displays various candlestick patterns to help traders spot key market movements and potential reversals.
Usage : Toggle the display of patterns, select specific pattern types, and customize pattern labels for improved visual analysis.
Display Patterns :
Description : Toggle to enable or disable the display of all candlestick patterns.
Details : When enabled, all selected candlestick patterns will be displayed on the chart, aiding traders in identifying key market movements and potential reversals.
Select Pattern Type :
Description : Select the type of candlestick patterns to detect.
Details : Options include Bullish (indicating potential upward trends), Bearish (indicating potential downward trends), or Both.
Trend Filter Method :
Description : Select the method to filter trends.
Details : Options include True Range (based on price range), Fractals, Volume, Combined, or None (no filtering).
Pattern Label Colors :
Bullish Pattern Color : Choose the color for labeling Bullish patterns, indicating potential upward trends.
Bearish Pattern Color : Choose the color for labeling Bearish patterns, indicating potential downward trends.
Indecision Pattern Color : Choose the color for labeling Indecision patterns, indicating no clear trend direction.
Base Line and Patterns Display Options :
Show Base Line in Place of Labels : Toggle to display a base line instead of labels for detected patterns. This helps visualize the general trend.
Show Counterattack Lines : Toggle to display Counterattack Lines patterns, indicating potential reversal points.
Show Dark Cloud Cover : Toggle to display Dark Cloud Cover patterns, a bearish pattern suggesting a potential reversal from an uptrend to a downtrend.
Show Engulfing Patterns : Toggle to display Engulfing patterns. Bullish Engulfing patterns suggest a potential upward reversal, while Bearish Engulfing patterns suggest a potential downward reversal.
Show Hammer Patterns : Toggle to display Hammer patterns, a bullish pattern indicating a potential reversal from a downtrend to an uptrend.
Show Hanging Man Patterns : Toggle to display Hanging Man patterns, a bearish pattern indicating a potential reversal from an uptrend to a downtrend.
Show Harami Patterns : Toggle to display Harami patterns. Bullish Harami patterns suggest a potential upward reversal, while Bearish Harami patterns suggest a potential downward reversal.
Show In-Neck Patterns : Toggle to display In-Neck patterns, indicating a potential continuation of the current trend.
Show On-Neck Patterns : Toggle to display On-Neck patterns, indicating a potential continuation of the current trend.
Show Piercing Patterns : Toggle to display Piercing patterns, a bullish pattern suggesting a potential reversal from a downtrend to an uptrend.
Show Three Black Crows : Toggle to display Three Black Crows patterns, a bearish pattern suggesting a potential reversal from an uptrend to a downtrend.
Show Thrusting Patterns : Toggle to display Thrusting patterns, a bearish pattern suggesting a potential continuation of the downtrend.
Show Upside Gap Two Crows : Toggle to display Upside Gap Two Crows patterns, a bearish pattern suggesting a potential downward reversal after an upward gap.
Show Evening Star : Toggle to display Evening Star patterns, a bearish pattern suggesting a potential reversal from an uptrend to a downtrend.
Show Inverted Hammer : Toggle to display Inverted Hammer patterns, a bullish pattern suggesting a potential reversal from a downtrend to an uptrend.
Show Morning Star : Toggle to display Morning Star patterns, a bullish pattern suggesting a potential reversal from a downtrend to an uptrend.
Show Shooting Star : Toggle to display Shooting Star patterns, a bearish pattern suggesting a potential reversal from an uptrend to a downtrend.
Show Doji Patterns : Toggle to display Doji patterns, indicating market indecision and potential reversals.
Show Dragonfly Doji : Toggle to display Dragonfly Doji patterns, a bullish pattern suggesting a potential reversal from a downtrend to an uptrend.
Show Evening Doji Star : Toggle to display Evening Doji Star patterns, a bearish pattern suggesting a potential reversal from an uptrend to a downtrend.
Show Gravestone Doji : Toggle to display Gravestone Doji patterns, a bearish pattern suggesting a potential reversal from an uptrend to a downtrend.
Show Long-Legged Doji : Toggle to display Long-Legged Doji patterns, indicating high market indecision and potential reversals.
Show Morning Doji Star : Toggle to display Morning Doji Star patterns, a bullish pattern suggesting a potential reversal from a downtrend to an uptrend.
Show Rising Three Methods : Toggle to display Rising Three Methods patterns, a bullish pattern suggesting a continuation of the uptrend.
Show Falling Three Methods : Toggle to display Falling Three Methods patterns, a bearish pattern suggesting a continuation of the downtrend.
Show Tasuki Patterns : Toggle to display Tasuki patterns, indicating potential trend continuation after a gap.
Show Marubozo : Toggle to display Marubozo patterns, indicating strong trend continuation, either bullish or bearish.
Show Long Lower Shadow : Toggle to display Long Lower Shadow patterns, indicating strong buying pressure and potential upward movement.
Show Long Upper Shadow : Toggle to display Long Upper Shadow patterns, indicating strong selling pressure and potential downward movement.
Show Three Inside Up/Down : Toggle to display Three Inside Up/Down patterns, indicating potential bullish or bearish reversals.
Show Kicker Pattern : Toggle to display Kicker patterns, indicating significant potential reversals.
Show Tweezer Tops/Bottoms : Toggle to display Tweezer Tops/Bottoms patterns, indicating potential reversals at the tops or bottoms.
Show Mat Hold Pattern : Toggle to display Mat Hold patterns, a bullish pattern suggesting a continuation of the uptrend.
Candle Body/Shadow Comparison Options :
Candle Body/Shadow Comparison : Choose the criteria to compare candle sizes: Shadows (larger shadows), Body (larger body), Both (larger shadows and body), Either (larger shadows or body), or None (no comparison).
Look-back Period for Candle Comparison : Specify the number of periods to look back when comparing the current candle size to determine if it is significant.
Period for Body Length Average : Specify the period for calculating the average body length of candles to help identify significant patterns.
Period for Candle Length Average : Specify the period for calculating the average length of candles to help identify significant patterns.
Specific Pattern Thresholds :
Doji Body Percentage Threshold : Set the percentage threshold for identifying Doji patterns based on the candle body size compared to its range.
Upper Shadow Percentage Limit : Set the maximum allowed upper shadow percentage of the candle’s range for identifying specific Doji patterns.
Lower Shadow Percentage Limit : Set the maximum allowed lower shadow percentage of the candle’s range for identifying specific Doji patterns.
Price Deviation Tolerance : Specify the price deviation tolerance for pattern recognition, which helps in identifying patterns within a certain price range.
Thrusting Neck Percentage : Set the percentage threshold for identifying Thrusting Neck patterns, indicating a potential continuation of the current trend.
Base Line Settings :
Base Line EMA Length : Specify the length of the EMA for the Base Line, helping to visualize the general trend.
Enhanced Calculations :
Wavelet Transform : If machine learning is enabled, calculates the wavelet transform for smoother and more accurate pattern detection.
Candle Body and Shadows Calculation : Detailed calculations for candle body and shadow lengths to improve pattern detection.
Average Calculations : Calculate averages for body and candle sizes to help identify significant patterns.
Fractals Calculation : Identify fractal highs and lows to aid in trend detection.
Trend Filters : Apply user-selected trend filters based on True Range, Fractals, Volume, or a combination.
Pattern Detection and Labeling : Detects and labels various candlestick patterns, including Doji, Engulfing, Hammer, and more, with options for displaying labels or base lines.
Alerts and Notifications : Set alerts for detected patterns and base line colors to notify traders of significant market events.
Plotting Candlestick Patterns :
Pattern Detection : Automatically detects and labels various candlestick patterns based on user settings.
Label Customization : Customize the labels for different patterns, including color and text.
Base Line Plotting : Option to plot a base line instead of labels for detected patterns, enhancing trend visualization.
Alerts for Patterns : Set alerts for detected patterns to keep traders informed of significant market changes.
📘 Enhanced Fibonacci Retracement Integration
Purpose : Provides a tool for identifying potential support and resistance levels using Fibonacci retracement.
Usage : Toggle the display of Fibonacci levels, adjust the lookback period, and customize the appearance of Fibonacci levels for better market analysis.
Auto Mode :
Description : Toggle to enable or disable automatic detection of price points.
Details : When enabled, the highest and lowest price points within a specified period will be automatically detected to set Fibonacci levels. Disable to manually set the top and bottom prices.
Period :
Description : Set the lookback period for detecting price points.
Details : Defines the number of bars to look back when detecting the highest and lowest prices in Auto Mode, used for calculating Fibonacci levels.
Manual Top :
Description : Manually set the top price level.
Details : Adjust this setting to reflect the peak price of interest when Auto Mode is disabled.
Manual Bottom :
Description : Manually set the bottom price level.
Details : Adjust this setting to reflect the low price of interest when Auto Mode is disabled.
Display Fibonacci :
Description : Toggle to show or hide Fibonacci retracement levels.
Details : When enabled, the calculated Fibonacci levels will be displayed on the chart, overlaying the price data.
Baseline Levels :
Description : Select Fibonacci levels to highlight as baselines.
Details : Choose specific levels to be visually distinct, emphasizing their significance in the analysis.
Fibonacci Levels Colors :
Upper Levels Color : Set the color for Fibonacci levels above the baseline, indicating potential resistance levels.
Lower Levels Color : Set the color for Fibonacci levels below the baseline, indicating potential support levels.
Baseline Levels Color : Set the color for highlighted baseline Fibonacci levels, making them stand out from other levels.
Display Individual Fibonacci Levels :
Show Level : Toggle to enable or disable the display of specific Fibonacci levels.
Level Value : Set the multiplier used to calculate each specific Fibonacci level relative to the price range.
Reverse Levels :
Description : Toggle to switch the calculation direction of Fibonacci levels.
Details : When enabled, levels are calculated in reverse, useful for analyzing downtrends.
Line Extension :
Description : Choose how Fibonacci level lines are extended on the chart.
Details : Options include extending lines to the left, right, or both, affecting their visual presentation.
Text Size :
Description : Adjust the font size of the labels for Fibonacci levels.
Details : Options range from large to tiny, allowing for readability adjustments according to user preference.
Line Style :
Description : Select the line style for Fibonacci levels.
Details : Options include solid, dotted, and dashed, providing visual distinction.
Line Width :
Description : Set the thickness of the Fibonacci level lines.
Details : A higher value makes the lines more prominent on the chart.
Baseline Line Style :
Description : Choose the line style specifically for the baseline levels.
Details : This can differ from other Fibonacci levels to emphasize their importance.
Baseline Line Width :
Description : Adjust the thickness of the baseline level lines.
Details : Can be set differently from other levels for visual emphasis.
Enhanced Calculations :
Automatic and Manual Top/Bottom Setup : Detect or manually set the highest and lowest price points.
Price Range Calculation : Determine the range between the highest and lowest prices.
Fibonacci Level Values : Calculate the values for each Fibonacci level.
Visual and Label Configuration : Configure visual aspects and labels for each level.
Plotting and Labeling :
Level Plotting :
Description : Plot each Fibonacci level on the chart.
Details : Draw lines representing each calculated level.
Label Customization :
Description : Customize the labels for Fibonacci levels.
Details : Include text, colors, and positioning for clarity.
📘 Supports and Resistances Integration
Purpose : Identifies key support and resistance levels to aid in market analysis.
Usage : Toggle the display of support and resistance lines, customize their appearance, and use Bollinger Bands for additional insights.
Display Supports and Resistances :
Description : Toggle to enable or disable the display of support and resistance lines.
Details : When enabled, support and resistance lines will be shown on the chart, providing key levels for market analysis.
Swing Period :
Description : Set the retrospective period for identifying swing points.
Details : A longer period captures more significant trends but may reduce sensitivity. The default value is 10.
Support Line Color :
Description : Set the color for support lines.
Details : Choose a color that enhances chart readability. Default is green.
Resistance Line Color :
Description : Set the color for resistance lines.
Details : Choose a color that makes resistance lines easily distinguishable. Default is red.
Trend-Based Line Color :
Description : Toggle to enable dynamic coloring based on trend direction.
Details : When enabled, the color of the lines will change according to the trend, aiding visual analysis.
Line Thickness :
Description : Adjust the thickness of the support and resistance lines.
Details : Choose a thickness value between 1 and 5 for better visibility.
Line Style :
Description : Select the style of the lines.
Details : Options include Solid, Dotted, or Dashed lines for visual distinction.
Number of Lines to Display :
Description : Set the maximum number of support/resistance lines to display.
Details : Adjust the number of lines to avoid clutter or to show more levels.
Display Bollinger Bands :
Description : Toggle to show or hide Bollinger Bands on the chart.
Details : Bollinger Bands provide a visual representation of volatility and potential price ranges.
Bollinger Bands Integration :
Description : Enable the integration of Bollinger Bands for S/R calculation.
Details : This feature adjusts the placement of S/R lines based on the market volatility captured by the Bollinger Bands.
Bollinger Bands Color Settings :
Description : Set colors for different Bollinger Band conditions.
Details :
Green: Prices above the median but below the upper band (potential overbought area).
Dark green: Prices above the upper band (strong upward momentum).
Light red: Prices below the median but above the lower band (potential oversold area).
Dark red: Prices below the lower band (strong downward momentum).
Fill Opacity Adjustment :
Description : Adjust the fill opacity between Bollinger Bands.
Details : Set the opacity level to balance visibility with other chart elements.
BB Sensitivity Level :
Description : Adjust the sensitivity for determining S/R levels near Bollinger Bands.
Details : A higher value increases the consideration of levels near the bands.
Band Width Multiplier :
Description : Control the width of the Bollinger Bands.
Details : Adjust the multiplier to expand or contract the bands based on market volatility.
Uniform BB Coloring :
Description : Apply a consistent color to Bollinger Bands.
Details : Simplify visual interpretation with a uniform color.
Plotting and Alerts :
Plotting Bollinger Bands :
Description : Plot the Bollinger Bands on the chart.
Details : The bands are colored based on the conditions set for market volatility and price ranges.
Alerts and Notifications :
Description : Set alerts for support/resistance breaks and Bollinger Band breakouts.
Details : Notify traders of significant market events related to these levels.
📘 Enhanced Trend Lines Integration
Purpose : Identifies and plots trend lines based on market structure to help traders understand market direction and potential buy/sell points.
Usage : Toggle the display of trend lines, customize their appearance, and use enhanced calculations for trend analysis.
Display Trend Lines :
Description : Enable or disable the display of trend lines on the chart.
Details : These trend lines are calculated based on market structure, specifically through the detection of Breaks of Structure (BOS). If enabled, the trend lines will help in identifying the market overall trend and potential buy and sell points.
Trend Line Colors :
Upper Line Color : Set the color for the upper trend lines to enhance visual distinction.
Lower Line Color : Set the color for the lower trend lines, aiding in easy identification of support levels.
Pivot Labels :
Show Pivots Labels : Control the display of pivot labels on the chart.
Pivot Label Size : Select the size of the pivot labels displayed on the chart. Options include Tiny, Small, Normal, Large, and Huge.
Trend Line Calculations :
Pivot Depth : Adjust the depth for pivot calculation based on the selected timeframe to capture significant price movements.
Pivot Deviation : Set the deviation for pivot calculation to identify key turning points.
Pivot Backstep : Define the backstep for pivot calculation to ensure accurate detection of pivot points.
Enhanced Calculations :
Market Structure Detection : Utilize advanced algorithms to identify key market structures, improving trend line accuracy.
Adaptive Parameters : Automatically adjust pivot depth, deviation, and backstep based on the selected timeframe for better relevance.
Zigzag Calculation : Implement zigzag patterns to dynamically adjust trend lines, ensuring they reflect current market conditions.
Slope and Intercept Calculation : Compute the slope and intercept for trend lines to enhance precision in trend detection.
Dynamic Updates : Continuously update trend lines as new data becomes available, ensuring real-time accuracy.
Alerts and Notifications : Set alerts for new high and low pivots, as well as for when the price crosses upper or lower trend lines, keeping traders informed of significant market changes.
Plotting Trend Lines :
Trend Line Plotting : Automatically draw trend lines based on detected BOS, helping traders visualize the market trend.
Diagonal Support/Resistance Lines : Plot diagonal lines to indicate support and resistance levels, enhancing the understanding of market dynamics.
Pivot Label Customization : Customize pivot labels for clear identification of high and low points in the trend.
Alerts for Trend Lines : Set alerts for when price crosses trend lines, ensuring timely notifications of potential trading opportunities.
📘 Enhanced Linear Regression Integration
Purpose : Uses linear regression to analyze price movements and identify trends.
Usage : Display the linear regression projection line, customize its appearance, and use enhanced calculations for better trend analysis.
Display Projection Line :
Description : Toggle to display or hide the linear regression projection line on the chart.
Details : This line represents the best fit line that predicts future prices based on historical data.
Data Source :
Description : Select the data source for the linear regression projection.
Details : This is typically the closing price but can be any price point such as open, high, or low. The selected source will be used to calculate the linear regression projection line.
Trend-Based Line Color :
Enable Trend-Based Line Color : Toggle to automatically color the projection line based on the trend direction. When enabled, the line will be red for a downward trend and green for an upward trend, providing a visual indication of market direction.
Uptrend Line Color : Select the color for the projection line when the trend is upward. This color will be used when "Enable Trend-Based Line Color" is active.
Downtrend Line Color : Select the color for the projection line when the trend is downward. This color will be used when "Enable Trend-Based Line Color" is active.
Enhanced Calculations :
Standard Deviation Calculation : Calculate the standard deviation for a given length to understand the volatility around the linear regression line.
Pearson's Correlation Calculation : Compute Pearson's R to measure the strength of the linear relationship between the price points and the linear regression line.
Slope and Intercept Calculation : Calculate the slope and intercept for the regression line, providing the basis for the projection.
Kernel Application : Optionally apply the RBF Kernel to the selected source data for smoothing and enhancing the regression calculations.
Dynamic Length Selection : Automatically select the optimal regression period based on the highest Pearson's R value, ensuring the most accurate trend representation.
Real-Time Updates : Continuously update the regression line and related calculations as new data becomes available, maintaining accuracy in real-time.
Alerts and Notifications : Set alerts for when the price crosses the linear regression projection line, notifying traders of significant market events.
Plotting Linear Regression Components :
Projection Line Plotting : Automatically draw the linear regression projection line based on historical data and the selected data source.
Label Customization : Customize the label for the projection line, including color and text, for clear identification on the chart.
Alerts for Projection Line : Set alerts for when the price crosses the projection line, ensuring timely notifications of potential trading opportunities.
📘 POC Analysis Integration
Purpose : Identifies the Point of Control (POC) to highlight price levels with the highest trading volume.
Usage : Toggle the display of the POC, customize its appearance, and use enhanced calculations for better market analysis.
Display POC :
Description : Toggle to display or hide the Point of Control (POC) on the chart.
Details : The POC is the price level at which the highest volume of trading occurred, indicating a focal point of market activity.
Data Source :
Description : Select the price source for POC analysis.
Details : This is typically the closing price but can be any price point such as open, high, or low. The selected source will be used to calculate the POC.
POC Line Colors :
Color Above POC : Set the line color when the closing price is above the POC.
Color Below POC : Set the line color when the closing price is below the POC.
Width Multiplier :
Description : Adjust the width around the price for POC analysis.
Details : A higher value broadens the calculation range.
POC Calculation and Visualization :
Price Level Initialization : Calculate the initial spacing between price levels based on the first candlestick and user settings.
Volume Data Accumulation : Accumulate volume data at specified price levels for each candlestick to determine the POC.
Dynamic Array Expansion : Expand price levels array to accommodate new price data outside the current range.
POC Determination : Determine and visualize the POC at the last candlestick if enabled by the user.
Alerts and Notifications : Set alerts for when the price crosses the POC, notifying traders of significant market events.
Plotting POC Components :
POC Line Plotting : Automatically draw the POC line based on historical data and the selected data source.
Label Customization : Customize the label for the POC line, including color and text, for clear identification on the chart.
Alerts for POC : Set alerts for when the price crosses the POC, ensuring timely notifications of potential trading opportunities.
📘 Enhanced Divergences Integration
Purpose : Detects and displays divergences between price movements and indicators to identify potential reversal points.
Usage : Toggle the display of divergences, select data sources, customize divergence colors, and use enhanced calculations for better trend analysis.
Display Divergences :
Description : Toggle to display or hide the detected divergences on the chart.
Details : Divergences occur when the price movement of an asset and a related indicator (e.g., volume or momentum) move in opposite directions. They are used to identify potential reversal points in the market. Regular divergences signal possible reversals, while hidden divergences can indicate continuation.
Data Source :
Description : Defines the timeframe from which to fetch data for analysis.
Details : Typically lower than the chart current timeframe for multi-timeframe analysis.
Divergence Colors :
Bearish Divergence Color : Sets the color for bearish divergence lines. Bearish divergences typically suggest potential downward price movement.
Bullish Divergence Color : Sets the color for bullish divergence lines. Bullish divergences typically indicate potential upward price movement.
Pivot Bars :
Left Bars : Number of bars to the left of the pivot point to consider. Helps in identifying the pivot high or low by looking back these many bars.
Right Bars : Number of bars to the right of the pivot point to consider. Assists in confirming a pivot point by ensuring no higher high or lower low is present within this range.
Display Hidden Divergences :
Description : When enabled, this setting reveals hidden divergences on the chart.
Details : Hidden divergences are a subtler form of divergence that often signal continuation rather than reversal. A hidden bullish divergence occurs when price makes a higher low while the indicator makes a lower low, suggesting the continuation of an uptrend. Conversely, a hidden bearish divergence occurs when price makes a lower high while the indicator makes a higher high, indicating the continuation of a downtrend. These divergences are particularly useful for identifying the strength of the current trend.
Dynamic Line Width Based on Divergence Count :
Description : When enabled, adjusts the width of the divergence line dynamically based on the count of divergences detected.
Details : This provides visual emphasis on stronger signals.
Enhanced Calculations :
Standard Deviation Calculation : Calculate the standard deviation for a given length to understand the volatility around the linear regression line.
Pearson's Correlation Calculation : Compute Pearson's R to measure the strength of the linear relationship between the price points and the linear regression line.
Slope and Intercept Calculation : Calculate the slope and intercept for the regression line, providing the basis for the projection.
Kernel Application : Optionally apply the RBF Kernel to the selected source data for smoothing and enhancing the regression calculations.
Dynamic Length Selection : Automatically select the optimal regression period based on the highest Pearson's R value, ensuring the most accurate trend representation.
Real-Time Updates : Continuously update the regression line and related calculations as new data becomes available, maintaining accuracy in real-time.
Alerts and Notifications : Set alerts for when the price crosses the linear regression projection line, notifying traders of significant market events.
Plotting Divergence Components :
Divergence Line Plotting : Automatically draw divergence lines based on historical data and the selected data source.
Label Customization : Customize the label for the divergence lines, including color and text, for clear identification on the chart.
Alerts for Divergences : Set alerts for when a divergence is detected, ensuring timely notifications of potential trading opportunities.
📘 Enhanced Average True Range Integration
Purpose : Measures market volatility using the Average True Range (ATR) to assist in identifying potential buy and sell points.
Usage : Set the ATR period, minimum tick filter, upper and lower coefficients, and customize ATR colors for better market analysis.
Show Labels :
Description : Enable or disable the display of labels for the Average True Range (ATR) indicator.
Details : This option controls whether the ATR signals (buy and sell) are shown on the chart with respective labels.
ATR Period :
Description : Sets the period for calculating the Average True Range (ATR).
Details : The ATR measures market volatility by calculating the average range of price movement over a specified period. A shorter period makes the ATR more sensitive to recent price movements, while a longer period smooths out short-term volatility.
Minimum Tick Filter :
Description : Sets the minimum tick filter for buy and sell signals.
Details : This filter ensures that the price movement is significant enough to be considered a valid signal. For example, a value of 20 means that the price must move at least 20 ticks from the open to the close to generate a signal.
Upper Coefficient :
Description : Sets the upper coefficient for band calculation.
Details : This value adjusts the sensitivity of the upper band used to detect high points. A higher coefficient makes the band wider, capturing more significant price movements, while a lower coefficient makes the band narrower, making it more sensitive to smaller price changes.
Lower Coefficient :
Description : Sets the lower coefficient for band calculation.
Details : This value adjusts the sensitivity of the lower band used to detect low points. A higher coefficient makes the band wider, capturing more significant price movements, while a lower coefficient makes the band narrower, making it more sensitive to smaller price changes.
ATR Colors :
Bullish Color : Sets the color for the bullish signal, helping to visually distinguish bullish trends.
Bearish Color : Sets the color for the bearish signal, helping to visually distinguish bearish trends.
Enhanced Calculations :
Dynamic Coefficient Calculation : Calculates dynamic coefficients based on market volatility, adjusting the sensitivity of ATR bands accordingly.
Band Calculation : Computes high and low bands using dynamic coefficients to detect significant price movements.
High/Low Point Detection : Identifies potential high and low points based on ATR band calculations and price thresholds.
Real-Time Updates : Continuously updates ATR calculations and signals as new data becomes available, ensuring accuracy in real-time.
Plotting ATR Components :
Signal Plotting : Plots bullish and bearish ATR signals on the chart based on calculated conditions.
Label Customization : Customize the labels for ATR signals, including color and text, for clear identification on the chart.
Alerts for Signals : Set alerts for detected bullish and bearish signals, ensuring timely notifications of potential trading opportunities.
📘 Enhanced ATR Visualization Parameters
Purpose : Provides a visual representation of market volatility using the ATR Strength Meter.
Usage : Toggle the display of the ATR Strength Meter, set thresholds, and customize its appearance for better market analysis.
Display ATR Strength Meter :
Description : Toggle to display or hide the ATR Strength Meter, a visual representation of market volatility.
Details : The meter is based on the Average True Range (ATR) and helps identify volatility trends.
High ATR Threshold :
Description : Set the threshold for high volatility.
Details : ATR values above this threshold indicate increased market volatility.
Low ATR Threshold :
Description : Set the threshold for low volatility.
Details : ATR values below this threshold indicate decreased market volatility.
Progression Bar Position :
Description : Select the position of the ATR Strength Meter on the chart.
Details : Options are "Top" or "Bottom", affecting where the volatility meter is displayed relative to price action.
Progress Bar Length :
Description : Set the horizontal length of the ATR Strength progression bar.
Details : Adjust to increase or decrease the bar's width, accommodating different chart sizes and user preferences.
Enhanced Calculations :
ATR Strength Calculation : Calculate the ATR strength to measure market volatility.
Dynamic Coefficients : Use dynamic coefficients based on volatility for more accurate calculations.
Progress Bar Calculation : Determine the position and color of the progression bar based on ATR strength.
Label Positioning : Dynamically position labels for minimum and maximum values to avoid overlap.
Plotting ATR Strength Meter :
Progression Bar Plotting : Plot the progression bar to represent the ATR strength.
Label Customization : Customize labels for the ATR strength, minimum, and maximum values.
📘 Enhanced Relative Strength Index Integration
(A special thanks to RumpyPumpyDumpy for allowing the private reuse of his script.)
Purpose : Measures market momentum using the Relative Strength Index (RSI) and Stochastic RSI to assist in identifying potential buy and sell points.
Usage : Set the RSI and StochRSI parameters, toggle the display of the RSI Meter, and customize its appearance for better market analysis.
RSI Calculation Parameters :
RSI Length : Defines the length of the RSI calculation.
Details : A longer period captures more data points but may reduce sensitivity.
RSI Overbought Level : Sets the overbought level for RSI.
Details : Values above this level indicate overbought conditions.
RSI Oversold Level : Sets the oversold level for RSI.
Details : Values below this level indicate oversold conditions.
StochRSI Length : Defines the length of the StochRSI calculation.
Details : A longer period captures more data points but may reduce sensitivity.
StochRSI %K Length : Defines the length of the %K line of the StochRSI.
StochRSI %D Length : Defines the length of the %D line (SMA of %K) of the StochRSI.
RSI Visualization Parameters :
Display RSI Meter : Toggle the display of the RSI Meter on the chart.
RSI Meter Size : Adjust the size of the RSI Meter displayed on the chart.
Details : Measured as the diameter of the meter. Increase the value for larger display size, enhancing visibility and making it easier to read the RSI trend at a glance.
Horizontal Offset : Move the RSI Meter horizontally across the chart.
Details : Positive values shift the meter to the left, allowing for placement adjustments relative to the chart's current view or specific visual preferences.
RSI Meter Components :
Sectors and Ticks : Draw sector arcs and tick marks around the RSI Meter to represent different RSI levels and thresholds.
Needle : Draw the needle on the RSI Meter to indicate the current RSI value.
Sector Labels : Label each sector of the RSI Meter to indicate market conditions like "Strong Buy," "Buy," "Neutral," "Sell," and "Strong Sell."
Title Label : Draw the title label for the RSI Meter displaying the RSI value and its period.
Enhanced Calculations :
RSI Calculation : Calculate the RSI using the built-in function with the specified length and source.
StochRSI Calculation : Calculate StochRSI values using the specified lengths for RSI, %K, and %D.
Dynamic Line Management : Efficiently manage and update dynamically created line objects to prevent potential memory leaks.
Optimized Sector and Needle Drawing : Enhanced the drawing functions for sectors, needles, and ticks to improve visual clarity and performance.
Plotting RSI Meter :
Sector Plotting : Draw the sectors on the RSI Meter using specified colors and widths to represent different RSI levels and thresholds.
Needle Plotting : Plot the needle on the RSI Meter based on the calculated RSI value to visually indicate the current RSI level.
Tick Plotting : Plot tick marks around the RSI Meter to denote key RSI levels and thresholds for better readability.
Label Plotting : Draw sector labels and a title label on the RSI Meter to provide context and information about the RSI levels and their corresponding market conditions.
📘 Market Sentiment Integration
Purpose : Analyzes market sentiment using various indicators to provide an overall sentiment score.
Usage : Enable or disable individual sentiment indicators, set account type, and customize sentiment calculations for better market analysis.
Volatility Index (IV) :
Description : Enable or disable the use of the Volatility Index in sentiment calculation.
Details : When enabled, the Volatility Index (IV) provides insight into market sentiment by measuring market volatility. The selected Volatility Index varies based on your TradingView account type.
Account Type :
Description : Select your TradingView account type.
Details : Free accounts use SPX, while Premium accounts use VIX.
Put/Call Ratio (PCR) :
Description : Enable or disable the use of the Put/Call ratio in sentiment calculation.
Details : The Put/Call ratio is a sentiment indicator that measures the volume of put options traded relative to call options, indicating market sentiment towards bearish or bullish expectations.
Fear and Greed Index :
Description : Enable or disable the use of the Fear and Greed Index in sentiment calculation.
Details : The Fear and Greed Index gauges the prevailing emotions in the market, indicating whether investors are inclined towards fear (bearish sentiment) or greed (bullish sentiment).
Momentum Indicators :
Description : Enable or disable the use of momentum indicators like MACD and RoC in sentiment calculation.
Details : Momentum indicators help identify the strength and direction of price movements, assisting in sentiment analysis.
Adaptive Periods for Shorter Timeframes :
Description : Toggle this option to use shorter periods for sentiment indicators when analyzing lower timeframes.
Details : Enabling this option allows for more responsive and sensitive analysis when working with shorter timeframes.
Calculation Details :
Normalization Function : Normalize the values of the indicators over a 252-period range.
Set Periods Function : Set periods based on user preference for faster or slower periods, adjusting the analysis sensitivity.
IV Calculation : Calculate the IV value based on the selected Volatility Index (SPX for Free accounts, VIX for Premium accounts).
Put/Call Ratio Calculation : Calculate the Put/Call ratio using volume data, where put volume is proportional to the trading range, and call volume is proportional to the price change.
RoC Calculation : Calculate the Rate of Change (RoC) as a momentum indicator, measuring the percentage change in closing prices over a specified period.
Dynamic Thresholds : Define dynamic thresholds based on historical data, calculating mean and standard deviation to determine upper and lower thresholds for IV, PCR, and RoC.
📘 Enhanced Market Trend Dashboard Integration
Purpose : Provides a summary of key market indicators and signals in a single dashboard for quick and easy reference.
Usage : Customize the dashboard settings to display relevant market information, including Ichimoku components, Linear Regression, Support/Resistance levels, MACD, RSI, and Market Sentiment.
Market Trend Dashboard Parameters :
Display Market Trend Dashboard : Toggle to show or hide the market trend dashboard, providing a summary of key indicators and signals.
Panel Position : Select the position of the dashboard on the chart for optimal viewing.
Panel Text Size : Choose the text size for the information displayed in the dashboard, ensuring readability.
Panel Background Color : Set the background color of the market trend dashboard, enhancing contrast with the chart.
Ichimoku Dashboard Parameters :
Display Ichimoku Dashboard : Toggle to show or hide the Ichimoku section in the dashboard.
Display Tenkan-Sen Price Cross : Indicate when the price crosses the Tenkan-Sen line, signaling potential trade opportunities.
Display Kijun-Sen Price Cross : Indicate when the price crosses the Kijun-Sen line, often considered a stronger signal than Tenkan-Sen crosses.
Display Chikou Span Price Cross : Indicate Chikou Span price crosses, providing insight into potential trend reversals.
Display Kumo Breakout : Indicate Kumo (cloud) breakouts, which can signify major trend shifts.
Display Kumo Twist : Indicate Kumo twists, suggesting changing market dynamics and potential reversals.
Linear Regression Projection Dashboard Parameters :
Display LR Projection Dashboard : Toggle to show or hide the Linear Regression Projection section in the dashboard.
Display Linear Regression Period : Indicate the period used for Linear Regression Projection analysis.
Display Pearson R Details : Show the Pearson R value in the dashboard, indicating the strength and direction of the correlation in the Linear Regression Projection.
Supports and Resistances Dashboard Parameters :
Display S/R Dashboard : Toggle to show or hide the Support and Resistance section in the dashboard.
Display S/R Break Prices : Show the latest break prices of support and resistance levels in the dashboard.
MACD Dashboard Parameters :
Display MACD Dashboard : Toggle to show or hide the MACD section in the dashboard.
RSI Dashboard Parameters :
Display RSI Dashboard : Toggle to show or hide the Relative Strength Index section in the dashboard.
Display RSI Details : Show the RSI value and status in the dashboard.
Display StochRSI Details : Show the StochRSI %K, %D values and status in the dashboard.
Market Sentiment Dashboard Parameters :
Display Market Sentiment Dashboard : Enable or disable the display of the Market Sentiment Dashboard, which summarizes key market sentiment indicators like Implied Volatility, Put/Call Ratio, and Fear and Greed Index.
Display Implied Volatility Details : Show or hide the Implied Volatility details in the Market Sentiment Dashboard.
Display Put/Call Ratio Details : Show or hide the Put/Call Ratio details in the Market Sentiment Dashboard.
Display Fear and Greed Index Details : Show or hide the Fear and Greed Index details in the Market Sentiment Dashboard.
Enhanced Calculations :
Ichimoku Cloud Trend Calculation : Calculates trend based on the relationship between Ichimoku Cloud components, identifying bullish or bearish trends.
Support and Resistance Break Detection : Detects breaks in support and resistance levels and updates the dashboard accordingly.
Linear Regression Projection Calculation : Calculates Linear Regression Projection and Pearson R value for trend analysis.
MACD Signal Calculation : Determines MACD status based on histogram values.
RSI and StochRSI Calculation : Calculates RSI and StochRSI values and updates their statuses in the dashboard.
Market Sentiment Score Calculation : Calculates overall market sentiment score based on individual sentiment indicators.
Dynamic Alert Management : Manages alerts for various dashboard signals to prevent repeated alerts.
Real-Time Data Integration : Continuously updates the dashboard with real-time data for accurate and current trend analysis.
Plotting Market Trend Dashboard Components :
Ichimoku Components Plotting : Plots Tenkan-Sen, Kijun-Sen, Chikou Span, and Kumo cloud with dynamic adjustments.
Support and Resistance Levels Plotting : Plots support and resistance levels and updates them dynamically based on market data.
Linear Regression Projection Plotting : Plots the Linear Regression Projection line and labels with trend-based colors.
MACD and RSI Plotting : Plots MACD and RSI signals on the dashboard, including status updates.
Market Sentiment Indicators Plotting : Plots Market Sentiment indicators like IV, PCR, and Fear and Greed Index with dynamic updates.
Alert Notifications Plotting : Plots alert notifications for significant market changes based on dashboard signals.
Summary
This comprehensive market analyzer integrates multiple technical indicators, including machine learning, Ichimoku Kinkō Hyō, candlestick patterns, Fibonacci retracement, support and resistance levels, trend lines, linear regression, POC analysis, divergences, ATR, RSI, and market sentiment. Each section includes detailed descriptions and usage instructions to help traders understand how to effectively utilize the indicator in their trading strategies.






















